入门学习算法与数据结构

1. 选择一本合适的书

十分推荐普林斯顿的这部橙书:《算法 第四版》,是我认为最适合拿来入门的。在橙书中淡化了算法分析和证明,强调了实现和应用,并且通过一些有趣的习题对比显示了优秀的算法和数据结构在时间和空间上的高效。
在这里插入图片描述
电子版
链接: https://pan.baidu.com/s/1ypEjbyPEs2RiFCWPODkpYg
提取码: jkd3

2. 编程实现和应用

理解一个数据结构与编程实现其完整功能是完全不同的挑战。自己动手亲自实现一些数据结构(如排序、集合、图和字符串处理)的简化版 API 能够极大的提升对数据结构内部细节的理解。
编写 API
leetcode 上,选择一些简单的但会使用到基础数据结构的题目,自己实现那些需要使用到的数据结构,而不是使用语言本身提供的,如 C++ 的 STL 或 Java 的 util 。

可视化帮助
我们除了底层 coding,最好也从顶层宏观的去观察一种数据结构的各种操作,推荐一个动态可视化网站 Visualgo

应用

  • 认真且独立完成 《算法 第四版》的公开作业;
  • 对书本后的编程习题进行实现;
  • 在 Leetcode 等在线网站上解决相关数据结构的题目;
  • 网上一些开源项目等。

3. 反复学习

因为算法和数据结构所涵盖的知识较多,所以一本书里的内容都需要分几个阶段去学习,难免会遗忘之前的内容,我建议敏捷学习,尽量快的往后学习。如果一个知识点实在不懂,可以存疑,“不求甚解”,很多时候经过后面的学习,前面的一些内容就自然明了。然后反复学习。

4. 极客时间

《数据结构与算法之美》
作者:王争
前 Google 工程师
在这里插入图片描述

发布了225 篇原创文章 · 获赞 64 · 访问量 20万+

猜你喜欢

转载自blog.csdn.net/duoduo_11011/article/details/103454978