严蔚敏的数据结构太难了 一个实力超群的程序猿必须知道的数据结构有哪些?
浏览量:2364
时间:2021-03-13 19:03:03
作者:admin
一个实力超群的程序猿必须知道的数据结构有哪些?
算法
- 图搜索 (广度优先、深度优先)深度优先特别重要
- 排序
- 动态规划
- 匹配算法和网络流算法
- 正则表达式和字符串匹配
数据结构
- 图 (树尤其重要)
- Map
- 堆
- 栈/队列
- Tries | 字典树
额外推荐
- 贪婪算法
- 概率方法
- 近似算法
下面这个没有特定优先级
算法:
- 三路划分-快速排序
- 合并排序(更具扩展性,复杂度类似快速排序)
- DF/BF 搜索 (要知道使用场景)
- Prim / Kruskal (最小生成树)
- Dijkstra (最短路径算法)
- 选择算法
数据结构
- HashMap (真的要知道所有哈希结构)
- 图和树(红黑树很好学) (red-black trees are good to learn)
- 堆(优先级队列)
- 栈/队列(必须知道的基础内容)
- Tries | 字典树
A *和遗传算法也很有趣。
我现在没学完C语言,但是学校已经开了数据结构课程,感觉像听天书一样,如何更好地理解数据结构?
第一,我觉得作为一个大学生,自学能力很强。对于C语言没有学完,可以自己抽时间认真学会。不会的可以到图书馆查阅资料,或者上网也可以自学。现在网络平台有好多优质资源,你可以试试。
第二,数据结构的算法比较抽象,必须认真研究。他是编程序的依据,这与C语言没有必然的联系。只是用C语言可以实现一些算法。也可以用别的语言实现。
第三,要对自己有信心。不会的问题可以和老师,同学交流。既然选择好专业,就应该深入研究。
这就是我的一些看法,希望能够帮到你!
严蔚敏的数据结构太难了 数据结构bf算法步骤 数据结构KMP算法
版权声明:本文内容由互联网用户自发贡献,本站不承担相关法律责任.如有侵权/违法内容,本站将立刻删除。