目录
简介
本人是小几年经验的前端开发,算法基础只有力扣几十道题,非常薄弱。
今天是个人的代码随想录算法打卡第六天,昨天很忙没精力写,今天赶上。继续硬控自己。
黑神话悟空最近刚出,送大家一句歌词里的话:踏平坎坷成大道,斗罢艰险又出发!
自律的尽头是自控,自控的尽头是硬控。
题目链接:344. 反转字符串
很简单,双指针,要注意的是js里面交换元素可以es6以后可以用解构写法,省去了定义temp,看起来干净精简。
题目链接:541. 反转字符串 II
建议先自己做一遍,也可以熟悉熟悉js自带的库。
题目链接:151. 反转字符串中的单词
快慢指针,跟移除元素异曲同工,注意处理多余空格的思路。
题目链接:206. 反转链表
犯二了,本质上可以把curr和pre想象成分别朝向右和朝向左的链表,所以到了最后一步的时候,curr就只剩最末尾的那个元素了且它的next为null。所以如果按照错误的写法,1-2-3-4-5会最后只输出5。
心得(双指针)
- 删除元素有些函数如shift()是O(n)的,把它放for循环里很容易O(n^2)。因此可以都考虑双指针删除。