leetcode
文章平均质量分 61
梳理leetcode题解
xumq77
这个作者很懒,什么都没留下…
展开
-
leetcode-H指数
h指数肯定是<所有论文的,让它在 int left=0,right=citations.size()范围里二分,可以加快搜索速度。// 要找的答案在 [mid,right] 区间内。// 要找的答案在 [0,mid) 区间内。// +1 防止死循环。篇论文被引用次数大于等于。是指他(她)至少发表了。原创 2024-06-11 11:28:57 · 367 阅读 · 0 评论 -
leetcode-跳跃游戏&跳跃游戏Ⅱ
计算位置i可以跳的区间k,在跳的区间k中,找到可以跳到最大位置的区间Math.max(k, temp);,一直计算最远的可跳区间,如果nums.length - 1在最终的最远可跳区间内,那么return true;//如果最远距离已经大于或等于最后一个元素的下标,则说明能跳过去,退出. 减少循环。//第i个元素能够跳到的最远距离。//最远距离k不再改变,且没有到末尾元素。//前n-1个元素能够跳到的最远距离。(ㄒoㄒ),下周回来再看一遍吧。原创 2024-06-06 15:49:13 · 304 阅读 · 0 评论 -
leetcode-买卖股票的最佳时机&买卖股票的最佳时机Ⅱ
1.每天都假设当天卖出去,求卖出去之前每一天max(maxprofit, price - minprice);2.同时不停更新购入的最低点minprice = min(price, minprice);动态规划就是提前算好每一个f(i)的值,以空间换时间。Fibonacci(斐波拉契数列)原创 2024-06-06 14:59:04 · 228 阅读 · 0 评论 -
leetcode-轮转数组
(代码题解来源于leetcode,非本人题解)原创 2024-06-05 18:24:00 · 298 阅读 · 0 评论 -
leetcode-合并两个有序数组
3.数组1 2 均有值,比较1和2哪个数值大,将大的数值赋予数组num1中。1.数组1无值,此时要将数组2中的所有值赋予最后合并的num1中。再来看官方题解,其实是一个思路,取出cur的值,赋给num1。2.数组2无值,要将数组1中所有值赋予最后合并数组num1中。(代码题解来源于leetcode,非本人题解)原创 2024-06-05 14:22:20 · 195 阅读 · 1 评论 -
leetcode-移除元素
1.如果左指针指向的元素等于 val,此时将右指针指向的元素复制到左指针的位置,然后右指针左移一位,左指针不变,循环判定是否等于 val。1.如果判定移除指针指向的元素不等于 val,我们就将判定移除指针指向的元素复制到赋值指针位置,然后将左右指针同时右移;2.如果判定移除指针指向的元素等于 val,它不能在输出数组里,此时赋值指针不动,判定移除指针右移一位。2.如果赋值过来的元素恰好也等于 val,可以继续把右指针指向的元素的值赋值过来。利用两个指针遍历数组,赋值指针,和判定移除指针。原创 2024-06-05 14:51:01 · 277 阅读 · 0 评论 -
leetcode-删除有序数组中的重复项及删除排序数组中的重复项 II
2.如果fast指针不等于fast - 1指针,意味着fast指针的元素是不重复的,这时候就可以将fast指针的元素复制到slow指针的位置,并且让slow、fast指针均++定义两个指针,都从左边开始遍历,该数组是有序数组,因此判定重复元素只需判定相连元素是否相等即可。1.如果fast指针等于fast - 1指针,那么fast指针后移;(代码题解来源于leetcode,非本人题解)原创 2024-06-05 15:09:28 · 131 阅读 · 0 评论 -
leetcode-多数元素
只有当指向位置的指针slow-2此时的值 不等于 指向赋值的指针,赋值指针的值才会赋给位置指针,此时位置指针移动,赋值指针也移动;如果位置指针slow-2的值等于赋值指针,证明有两个连续的重复值,此时不可以赋值,因此赋值指针fast就需要++(代码题解来源于leetcode,非本人题解)原创 2024-06-05 16:48:59 · 175 阅读 · 0 评论