草庐IT

Leetcode_Master

全部标签

复习leetcode第四题:寻找两个正序数组的中位数(C语言)

我的代码思路是先创建一个新整型数组arr,然后将nums1和nums2中的数存入arr中。(存入后代码是无序的,例如leetcode给出的第一种情况,arr数组中应该是{1,3,2})易错点:但在使用循环存入时注意,arr的元素个数应该是nums1Size+nums2Size,因此存入时要小心,不要出现数组某一地址重新赋值的状况。本题的难点在于排序和判断中位数算法,分为了偶数个数字与奇数个数字两种中位数算法,但只需将这两个功能实现,本题便迎刃而解了。    一.排序方法:    本题笔者能立即想到的排序方法共有两种:选择法排序、冒泡法排序。笔者在本文中会将两种排序方式一一讲述,读者可以选择最适

动态规划之第 N 个泰波那契数/三步问题【leetCode】【算法】

动态规划动态规划之第N个泰波那契数/三步问题动态规划LeetCode题目第N个泰波那契数求解1求解2(滚动数组)三步问题求解1求解2(滚动数组)动态规划  如果问题是由重叠的子问题构成的,那就可以用动态规划(dynamicprogramming)来解决它。  在求解动态规划问题的时候,我们需要思考以下5个步骤:状态表示(这是最重要的):我们会创建一个dp表,将较小问题的解放在表中,这样我们就会得到原始问题的解,所以状态表示就是清楚dp表里面某个位置所表示的含义。状态转移方程(最难的):也就是从题干中找到关于dp[i]的等式。初始化:填表时,保证不越界。当求解问题时,需要知道较小问题的解,较小问

【刷题】leetcode 1544.整理字符串

刷题1544.整理字符串思路一(模拟栈速解版)思路二(原地算法巧解版)思路三(C++栈版)Thanks♪(・ω・)ノ谢谢阅读!!!下一篇文章见!!!1544.整理字符串来看题目描述我看到本题的第一想法是双指针法,但是我所构想的逻辑无法达到目的,具体来说我采用前后指针,依次前进,然后满足条件就跳过,这样就导致会忽略许多满足的结构,就让我十分头疼,调试了半天还是不行,甚至想要使用三指针,四指针…服啦!结果表明都是不行的。下面来一起看看正确解法吧思路一(模拟栈速解版)这个和括号匹配问题很像,把字符串依次入栈,然后满足条件的就一起消除,主要就用到栈的压栈操作和取栈顶操作。这样一一匹配就能达到要求。来看

算法沉淀——动态规划之回文串问题(上)(leetcode真题剖析)

算法沉淀——动态规划之回文串问题01.回文子串02.最长回文子串03.分割回文串IV04.分割回文串II05.最长回文子序列06.让字符串成为回文串的最少插入次数01.回文子串题目链接:https://leetcode.cn/problems/palindromic-substrings/给你一个字符串s,请你统计并返回这个字符串中回文子串的数目。回文字符串是正着读和倒过来读一样的字符串。子字符串是字符串中的由连续字符组成的一个序列。具有不同开始位置或结束位置的子串,即使是由相同的字符组成,也会被视作不同的子串。示例1:输入:s="abc"输出:3解释:三个回文子串:"a","b","c"示例

算法沉淀——动态规划之子序列问题(上)(leetcode真题剖析)

算法沉淀——动态规划之子序列问题01.最长递增子序列02.摆动序列03.最长递增子序列的个数04.最长数对链01.最长递增子序列题目链接:https://leetcode.cn/problems/longest-increasing-subsequence/给你一个整数数组nums,找到其中最长严格递增子序列的长度。子序列是由数组派生而来的序列,删除(或不删除)数组中的元素而不改变其余元素的顺序。例如,[3,6,2,7]是数组[0,3,1,6,2,2,7]的子序列。示例1:输入:nums=[10,9,2,5,3,7,101,18]输出:4解释:最长递增子序列是[2,3,7,101],因此长度为

LeetCode35. 搜索插入位置(C++)

LeetCode35.搜索插入位置题目链接代码题目链接https://leetcode.cn/problems/search-insert-position/代码classSolution{public:intsearchInsert(vectorint>&nums,inttarget){intleft=0;intright=nums.size()-1;while(leftright){intmiddle=left+(right-left)/2;if(nums[middle]>target){right=middle-1;}elseif(nums[middle]target){left=mid

LeetCode704. 二分查找(C++)

LeetCode704.二分查找题目链接代码题目链接https://leetcode.cn/problems/binary-search/description/代码classSolution{public:intsearch(vectorint>&nums,inttarget){intleft=0;intright=nums.size()-1;while(leftright){intmiddle=left+(right-left)/2;if(nums[middle]>target){right=middle-1;}elseif(nums[middle]target){left=middle+

k8s部署 多master节点负载均衡以及集群高可用

一、k8s添加多master节点实验1、master02节点初始化操作2、在master01节点基础上,完成master02节点部署①从master01节点复制所需要的文件需要从master01节点复制etcd数据库所需要的ssl证书、kubernetes安装目录(二进制文件、组件与apiserver通信的集群引导文件、启动参数配置文件)、kubectl与apiserver通信的集群引导文件、各组件被systemd管理的service文件②修改apiserver、controller-manager、scheduler启动参数配置文件中的监听地址以及apiserver的通告地址③验证二、使用n

leetcode:491.递增子序列

1.误区:不能直接对数组排序再求解子集,因为那样就改变了原有数组的顺序2.树形结构:一个一个取数,然后保证是递增序列,且不能重复。(数层上不可以重复取,树枝上可以重复取)收集的结果不光是叶子节点。所以注意两点:数层节点去重、满足递增条件3.代码实现:(去重方法:记录本层递归用到了哪些元素,不要重复)

算法沉淀——动态规划之子数组、子串系列(上)(leetcode真题剖析)

算法沉淀——动态规划之子数组、子串系列01.最大子数组和02.环形子数组的最大和03.乘积最大子数组04.乘积为正数的最长子数组长度01.最大子数组和题目链接:https://leetcode.cn/problems/maximum-subarray/、给你一个整数数组nums,请你找出一个具有最大和的连续子数组(子数组最少包含一个元素),返回其最大和。子数组是数组中的一个连续部分。示例1:输入:nums=[-2,1,-3,4,-1,2,1,-5,4]输出:6解释:连续子数组[4,-1,2,1]的和最大,为6。示例2:输入:nums=[1]输出:1示例3:输入:nums=[5,4,-1,7,8