要成为超级兵的小兵
要成为超级兵的小兵
全部文章
分类
题解(13)
归档
标签
去牛客网
登录
/
注册
要成为超级兵的小兵的博客
纸上得来终觉浅,绝知此事要躬行。
全部文章
(共13篇)
题解 |动态规划解最长回文子序列
1.想想与回文 子串 有什么区别(子串与子序列) 2.初始条件 3.循环遍历从后开始。 class Solution { public: int longestPalindromeSubSeq(string s) { int n = s.size(); //...
动态规划
最长子序列
2021-07-20
0
642
题解 | #最长递增子序列#贪心+二分
//1.理解贪心算法使用 //2.maxLen数组的作用--找到字典序递增子序列 //3.二分查找 //Leetcode上最长递增子序列求长度+牛佬“华科不平凡”的maxLen数组恢复字典序 class Solution { public: //找到第一个比value大的值 int...
二分
最长子序列
贪心
2021-04-09
1
948
交换三次,m需要取余(和翻转单词顺序思想一致)
class Solution { public: /** * 旋转数组 * @param n int整型 数组长度 * @param m int整型 右移距离 * @param a int整型vector 给定数组 * @return int...
旋转数组
2021-04-07
6
972
使用三个辅助变量
//最小值,最大值,以及第一个大于0的值 //遍历一遍数组,得到缺失的第一个正整数 class Solution { public: int minNumberdisappered(vector<int>& arr) { int min=INT_MAX...
数学
2021-04-07
0
561
动态规划 4 步走
//动态规划 4 步走 // 1.确定状态,最后一步+分解为子问题 // 2.转移方程,根据子问题直接定义得到 // 3.初始条件 + 边界条件 // 4.计算顺序,避免重复计算 class Solution { public: int uniquePaths(int m, int n) {...
动态规划
2021-04-06
0
646
两个stack实现,一个存数据,一个存最小值
class Solution { public: /** [[1,3],[1,2],[1,1],[3],[2],[3]] * 数组第一个代表操作,1==push,2==pop,2==getMin * 所以 1出现时,后面需要接push的数字 * 把所...
最小栈
2021-04-04
0
690
剑指offer,顺时针打印矩阵
/*每次打印都是从一个(start,start)的对角线点开始终止条件为 start2< cols && start2 <rows;打印每一圈可以分为四步,1.从右往左打印一行,2.从上往下打印一列,3.从右往左打印一行,4.从下往上打印一列,这四步严格按照顺序来因为第1...
螺旋矩阵
顺时针打印
2021-04-03
0
789
二叉树公共组先,剑指Offer
class Solution { public: //先找到 路径,从根节点出发 bool getPath(TreeNode* root,list<TreeNode*>& path,int value){ path.push_back(root);...
公共祖先
二叉树
2021-04-03
0
602
递归+迭代(借用栈)
/** * struct TreeNode { * int val; * struct TreeNode *left; * struct TreeNode *right; * }; */ //递归版本大家基本都会 //但是我觉得迭代版本的写法就很灵活,特别是中序和后序遍...
递归
二叉树遍历
2021-03-31
0
661
快排(必备)+归并(体会分治)+堆(自己建堆)
//快速排序 关键在于 partition函数,可以自己参考一个模板,我这个参考大话数据结构 class Solution { public: /** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * 将给定数组排序 * @pa...
排序
2021-03-29
0
702
首页
上一页
1
2
下一页
末页