代码随想录算法训练营第一天| LeetCode704 二分查找、LeetCode27 移除元素、LeetCode977 有序数组平方

LeetCode704 二分查找

文章讲解:代码随想录

视频讲解:手把手带你撕出正确的二分法 | 二分查找法 | 二分搜索法 | LeetCode:704. 二分查找_哔哩哔哩_bilibili

第一想法:自以为理论滚瓜烂熟,写出来bug一堆。最终一点点debug补救通过了,但是非常的沮丧。

看完随想录后:从没想过什么左闭右开什么的。。。还是写代码之前太想当然了,有坚实的理论基础才能写的顺利。

困难:一开始用while left < right:同时在mid往left或者right赋值时并没有+1或者-1.遇到的问题是如果target不在数组里,那么就会infinite loop。解决方法用while left < right - 1:这是能确保while loop会停下,但是又出现一个问题,left永远不会等于right,那么如果数组中只有一个数字的时候,while loop都不会进去,那么就需要补救措施,就是在while loop后增加判断下标为left或者right的数字是否与target相等,再做相对应的输出left或者right。代码写得非常差劲,跟随想录里的答案比较简直一坨,希望跟着打卡营坚持下来会有提升吧。

LeetCode27 移除元素

文章讲解:代码随想录

视频讲解:数组中移除元素并不容易! | LeetCode:27. 移除元素_哔哩哔哩_bilibili

第一想法:做过,所以答案的思路也清楚,但是如果不是知道答案,一定也是想不到最优解的。愚蠢的自己只能想到最笨的解法。

看完随想录后:写的很清楚!

困难:没遇到什么困难

LeetCode977 有序数组平方

第一想法:list comprehension 平方每个元素加 sort 两行搞定 O(nlogn + n),两行解决问题,自己以为弄得明明白白,牛的不行,(这种秒杀题的快感只能宣泄在easy的题目上了。

看完随想录后:很想回到做完题的那时候给自己一巴掌。双指针的用法真是多啊!

困难:写的很详细,看完就会了,没什么困难。

今日收获:二分查找的具体实现细节理解的更加清晰了;27,977双指针的应用确实狠巧妙,以后在做题的时候也要多往这些方法上考;学习时长1.5小时,用午休和下班后一点点时间完成,以后题目变难了可能就没这么短了。这些容易的题目我都能发掘出这么多问题,我相信我跟下这个打卡营一定能收获颇丰的。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值