漫漫云天自翱翔
漫漫云天自翱翔
全部文章
题解
LeetCode刷题历程(9)
oracle(1)
学习(1)
开发注意事项(1)
未归档(7)
归档
标签
去牛客网
登录
/
注册
Rosa.sp
坚定目标向前
全部文章
/ 题解
(共68篇)
题解 | #螺旋矩阵#
来自专栏
螺旋矩阵 题解一:递归 题解思路: 每次递归都剥离一层。 图示:复杂度分析: 时间复杂度:,每个元素遍历一次 空间复杂度:,每一次递归完成,行列都会减2,所以是除2,加一的原因是向上取整,实现如下: class Solution { public: ...
算法
2021-07-29
2
717
题解 | #合并有序链表#
来自专栏
题解一创建辅助头节点图示: 复杂度分析:时间复杂度:O(M+N)),最差为轮流插入两个链表,最终需要遍历完两个链表,所以为O(M+N)) 空间复杂度:O(1),只使用了有限常数个变量; 实现如下: class Solution { public: /** * * @pa...
链表
算法
2021-07-19
4
3367
题解 | #最小编辑代价#
来自专栏
题解一:动态规划 动态转移方程分析图示: 复杂度分析: 时间复杂度:O(MN) 空间复杂度:O(MN) 实现如下: class Solution { public: /** * min edit cost * @param st...
算法
DP
2021-07-18
13
2086
题解 | #求路径#
来自专栏
题解一: 动态规划 题解思路: dp[i][j]代表从起点到(i,j)的路径数量,到(i,j)只能从(i-1,j)和(i,j-1)到达。所以dp[i][j] = dp[i-1][j]+dp[i][j-1]; 图示:54 dp数组变化*复杂度分析:** 时间复杂度:O(MN) ...
算法
DP
2021-07-18
2
935
题解 | #求平方根#
来自专栏
题解一:二分 题解思路: 二分查找比a<=mysqrt(x)<=b 如果 mid*mid <=x 且(mid+1)(mid+1) <x 返回mid 如果mid*mid > x right = mid-1; 否则 lef...
算法
二分
2021-07-18
18
2632
题解 | #第一个只出现一次的字符#
来自专栏
题解一:暴力主体思路:选定一个字母,遍历往后所有的字母,找是否出现相同的字母:1、将所有相同的字母设置为' ',防止后续重新被遍历到。开始下一个字母;2、遍历完所有字母都不相同,即为最后的答案;3、所有字母都不是唯一出现则返回-1。 图示: 复杂度分析:时间复杂度:O(n^2),双层循环;空间复...
算法
2021-07-18
1
774
题解 | #删除有序链表中重复的元素-II#
来自专栏
题解一:迭代 题解思路: 利用一个变量记录重复元素个数,修改链表相应节点的next 图示:复杂度分析: 时间复杂度:O(n) 空间复杂度:O(1)实现如下: class Solution { public: /** * * @param head...
算法
链表
2021-07-17
1
633
题解 | #划分链表#
来自专栏
题解一:创建两个节点分别指向大于x和小于x图示:复杂度分析: 时间复杂度:O(n) 空间复杂度:O(1)实现如下: class Solution { public: /** * * @param head ListNode类 * @p...
链表
算法
2021-07-16
3
1108
题解 | #二维数组中的查找#
来自专栏
题解一:暴力搜索解题思路: 逐行逐列的搜索二维数组,判断是否存在目标值。 复杂度分析:时间复杂度:O(MN)空间复杂度:O(1) 实现如下: class Solution { public: bool Find(int target, vector<vector<int> ...
算法
二分
2021-07-16
140
7793
题解 | #合并两个有序的数组#
来自专栏
题解一:从尾部开始合并 图示:复杂度分析: 时间复杂度:O(M+N) 空间复杂度:O(1)实现如下: class Solution { public: void merge(int A[], int m, int B[], int n) { int end ...
2021-07-16
16
1857
首页
上一页
1
2
3
4
5
6
7
下一页
末页