Makoq / TheAlgorithms-JavaScript

SwordToOffer and LeetCode algorithm subjects in JavaScript.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

记录一些学习和解决算法题目的代码和心得。

第一阶段:第一次刷完剑指offer 19.6.17是第一遍刷完剑指的时候,整体的感觉是,因为考研时对数据结构有过全面而深入的学习和理解,所以刷起来没有想象中那么吃力,有一些题目做起来还是比较顺手的,但同时,也有一些题目相对而言比较困难(比如最后几道),而且确实有一些相关概念也有遗忘的情况,对一些递归**掌握的还不够熟练,总而言之,还是很有收获,应该说总体上对算法还是有了更进一步的认识和理解了吧。

有一些技巧相关的东西要记得: 1.for循环中嵌套递归

2.层次遍历时,循环开始先拿到队列长度,作为每一层树节点的数目,来解决相关对每一层树节点的操作时,十分有帮助

3.回溯法还要好好理解一下

之后,准备开始刷leetcode

19/6/22刷了两道,第一道感觉还可以,在第二道就感觉明显感到吃力了,但是算法可以靠自己的思路实现,虽然时间可能花的多一点,继续加油吧

19/7/12 刷let17时,写对了一个比较复杂的递归,就是之前记录的for循环中嵌套递归,算是递归中比较复杂的了吧,是大清早来刷算法,感觉效率很高,对递归理解和使用又有了更高的自信,加油,加油

19/7/19 今天刷了2019京东春招笔试题,选择题还是有进步,总体感觉题不难,但是编程题第一道,遇到困难了,功能可以执行,但是时间复杂度总是超过规定时间,最后还是没能解决,很难受啊,这如果在真正的笔试遇到这种坑那就倒霉了,哎,继续加油吧。

19/9/3 暑假回来,一段时间没有刷题了,感觉做题明显慢了,好在解题思维还是有的,研二开始了,估计接下来的日子会更加压力山大,加油吧。

19/9/6 最近的算法都是遇到时间效率的问题,能通过绝大部分测试用例,但是遇到少部分较长的测试用例还是会触发时间效率不高的问题,比如56,通过用例是168/169,现在感觉写算法还是各种循环嵌套,没有特别灵性的写法,技巧性的写法,加油吧

19/10/11 十一假期回来,又有一段时间没有刷题了,9月都忙着在和进哥做udx server,刷了一道用动态规划的题目,leetcode62,动态规划的核心特点就是自底向上,把原始问题划分为若干个子问题,整体问题的最优解就是子问题的最优解,如f(10)=f(9)+f(8),f(9)=f(8)+f(7).....在解题时也常会用到递归

19/11/22 这一周基本上每天都是2道算法题,简单题感觉还可以,有些中等题就有些难受了,比如207,208这两道题目,还是比较费劲的。208的前缀树算法,之前没接触过,这个算法很神奇,我感觉接触过一回之后遇到也就有思路了,207这个涉及到图和拓扑排序,拓扑排序这一块忘得差不多了,最后还是看着人家的题解思路做出来的,加油吧。

19/12/2 最近刷题的时候,遇到几道动态规划的题目309,322,没有好的思路,感觉自己对动态规划的把握还是不够,还是没有抓住动态规划的核心所在,对于动态规划的入门级题目都把握的不是很好,就是感觉到与科班出身的别人的差距,哎,难受。加油吧。

19/12/13 今天基本还有一道就刷完leetcode热题100了,其实一直在坚持每天两道,都是在项目间隙抽时间做,也有几天只做了一道,每每坚持不下去的时候,还是继续在坚持,其中也经历了很多次算法通过所有测试用例的快感,也经历过灵机一动就有解题思路,但也经历过连续多次的ac代码,也经历过看完算法题目直接懵逼,更是经历过看答案都看不懂的痛苦,哎。。。也不知道目前的算法能力够不够的上BAT的水平,感觉还是有一些差距,遇到动态规划的题目,还是没有十分的得心应手,把握程度仍然不够,不过,经历这些题目以后,还是拓展了思维,提升的程序设计的思路吧,之后,打算针对特定模式的算法,比如动态规划,进行专门的学习和理解吧,然后,还要改进算法的时间效率,虽然说暴力法真的很好用,但是还是能改进就多改进吧。想想我今年,上半年刷了剑指,下半年刷了leetcode,然后做了项目,写了好多业务代码,都没有再去发论文(不过论文是真的难写>->),现在还是比较迷茫,哎,没有论文思路就先巩固技术吧。。。最后,继续加油吧。

19/12/16 今天做完最后一道算法,最后一道其实很简单,读完题目就有了思路,刷算法题算是经过一个阶段了,鼓励一下自己,真棒啊!!

19/12/19 腾讯精选50题,总体上不难,简单题居多。

19/12/27 腾讯精选50题,全都做完了,还有两道没有通过全部的测试用例,有几道困难题真的难做。

20/1/2 399卡了我一天,这道题感觉用js做不出来,很难,哎,如果这个题出现在面试,我绝逼挂了,难受。

20/1/15 最近没有刷算法,今天做了一道据说是大疆的算法题目,添加了gists,不难,很快就做出来了。

剑指offer: 几个题目的思路要多巩固: 4,5,11,9,15, 17,32,33,48

2020.7.30. 北京字节跳动提前批意向书。 2020.10.31. 北京字节跳动正式带薪offer。

感谢曾经努力的自己~~

About

SwordToOffer and LeetCode algorithm subjects in JavaScript.


Languages

Language:JavaScript 99.3%Language:Java 0.7%Language:Python 0.0%