个人觉得在了解了数据结构之后,去看下算法的实现,有时候会有种时曾相识的感觉,就说搜索,深度也好广度也好,反正你要抽象出一个节点来,这个和链表的节点也有点相似的地方,之后深搜和广搜和树也有关系,一个是每个树枝的去搜索,一个是每一层去搜索,而深度搜索的回溯过程也用到了递归,那么也对应了栈,所以,我觉得这种东西无所谓谁对应谁,主要是熟练了解每种数据结构的特点,灵活应用。
以上,是我个人学习时的一点体悟,纯手敲,希望对你有点帮助
再说一下,貌似,队列的特点,也就是先进先出,实现上也可以用链表吧
最好是结合算法来学
因为数据结构是数据之间联系
而算法是对数据的处理
数据结构对算法来讲是非常重要的
有个科学家曾说过:
程序=数据结构+算法
一般一个算法会对应到某一种数据结构
比如递归算法对应到栈
广度搜索对应到队列
学习一种数据结构时
应先找到其相应的算法
然后通过理解算法来学习数据结构
这样才能更好的掌握
否则会有一种,学了都不知道有什么用的感觉
我刚开始学习数据结构,看了两章,感觉概念艰涩难懂,都不知道在讲什么,也不知道有什么用,导致很没有兴趣。