生命不息,奋斗不止。
Algorithms4是关于算法第四版(传说中的红宝书)的代码练习项目,这本书估计是我看过最好的数据结构算法的书籍了。 书上的数据结构实现方式都很经典,所以就算是自己写不出来,也要跟着实现一遍。相信我,看完这本书,你会觉得神清气爽。 我想我要首先申明一点,这本书前面有一部分都是讲的基础知识,但是我觉得你如果是java初学者的话,指望这些内容来入门,我劝你 打消这个念头。我想你应该做的是先去学学java基础,然后再来用java这个工具学习数据结构和算法。所以,这个项目都是实现数据结构和 算法的,书上的基础语法的练习不包含在里面。
第一章的关于数据结构和算法的实现都很简单,其中队列和栈既可以使用链表的方式来实现,也可以使用数组来实现,如果是数组的话,
有个动态扩容的方法要实现,这一块可以参考java
中的ArrayList.java
的扩容机制,java
扩容机制不止在ArrayList.java
里面有
,HashMap.java
等等里面都有很经典的实现方式(所谓经典,就是扩散因子的选择)。
- 有向图实现
- [有向图的可达性]