学习记录(随时更新~)(20210223)

学习记录(随时更新~)(20210223)

Leetcode刷题:(这里主要参考wv公众号“labulandong"和B站上花花酱的表世界):
学习内容:(https://github.com/CyC2018/CS-Notes)
坚持,每天一题,先数据结构后算法

数据结构(形成思维框架)

1.数据结构的存储方式

数据结构的存储方式只有2种:数组(顺序存储)和链表(链式存储)
数据结构相关:
1)链表
2)树
3)栈和队列
4)哈希表
5)字符串
6)数组与矩阵
7)图
8)位运算
ps:分析问题,要有递归的思想,自顶向下,从抽象到具体,数组和链表是结构基础(底层存储)。

2.数据结构的基本操作

对于任何数据结构,基本操作为遍历(迭代和递归)+访问(增删和查改)。
所谓框架,就是套路。不管增删查改,这些代码都永远无法脱离结构,可以把结构作为大纲,根据具体问题在框架上添加代码。

3.算法刷题指南

数据结构是工具,算法是用合适工具解决特定问题的方法。
先刷二叉树,形成框架思维。

4.leetcode如何刷题(参考B站的花花酱的表世界)

1)要刷多少题?
每个类型10~20题(动态规划,多多益善),一共200至300道题。
2)如何刷题?
同类型的题目一起刷。e.g.周一树/链表 周二搜索
第一遍:每道题想5分钟想不出来就看答案
第二遍:尝试不看答案完整实现(不超过60分种)
第三遍:尝试快速实现,如果15~20分钟快速实现不了就看答案
3)看代码很重要,看代码很重要
看至少3~5种不同实现方式,分析优缺点及为什么这么快
学习新的语言、算法、数据结构、模板,最佳实现,API
4)刷题过程种培养的能力
扩展的思路,至少看出用的什么算法
数据规模->时间复杂度
代码风格:1)一致性:命名,缩进,换行,括号
2)有意义的变量名

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值