算法的好搭档就是数据结构,离了它多逻辑都跑不动。数据库第一章的 PPT讲得挺清楚的,尤其是把数据结构和算法的关系解释得蛮透彻,挺适合入门的朋友看一看。
数据结构就是算法要操作的“工具箱”。比如排序算法要操作数组、树或者链表,这些都是数据结构。理解它们的特性,你写代码才不会绕远路。
看完 PPT 如果你还想多了解点,下面这些资源也不错:数据结构与算法、算法与数据结构精粹、还有专门讲 Dart 的也有,Dart 数据结构和算法。
嗯,想深入的可以顺便看看MySQL
和Oracle
里的结构原理,比如 B+树怎么支持索引查找,对数据库优化也挺有。推荐你看下这两篇:MySQL 索引的数据结构 和 Oracle SQL 结构解析。
如果你是前端开发,但也想把算法打牢,建议搞清楚链表和树这些结构怎么用,后面 DOM、做性能优化时会有惊喜。比如你在做虚拟 DOM diff 算法时,树结构就重要。
下载 PPT 看完,有兴趣的话可以搭配这些扩展资源慢慢刷,知识挺系统的。数据结构这块真不是背概念,动手敲代码才能记得牢。