目录

01 数据结构与算法学习开篇

目录

/images/algo/linkedlist.jpg

数据结构与算法前前后后已经学习了很长时间,从一开始看《数据结构与算法分析:C语言描述》,到后来看 Python 相关实现《Problem Solving with Algorithms and Data Structures using Python》,但是一直感觉不得其法。

究其原因,一方面是自己对 C 语言一知半解,所以一开始练习太少;另一方面是工作中使用太少,知识这种东西只有到达一定的熟练程度才能真正发现其作用。现在有幸在极客时间订阅了王争老师的专栏数据结构与算法之美,看过之后感觉很好,相比与之前看的书籍有很好的发散和扩展,恰逢《数据结构与算法:python语言实现》也刚刚面市。所以决定下定决心在 2018 最后三个月好好重新学习数据结构与算法。因此就有了这个系列的博客,希望监督自己多加练习。

本系列博客会按照专栏数据结构与算法之美的结构组织,也会从中摘录部分内容,在此特地申明,也非常推荐大家订阅此专栏。然后会以《数据结构与算法:python语言实现》作为辅助来扩展内容,并且在每篇文章的最后,我会尽可能给出与当篇文章相关的 linkcode 习题。

当然作为自己的博客,目的不是复制别人的内容,是想对常用的数据结构作一个总结,然后督促自己动手实现这些数据结构和算法。最后想说一句,数据结构和算法看起来没用,我们平时大多数使用的都是语言内置好的容器和现成的函数,我们只需要知道它们的功能,无需关注它们的实现细节,我们也能写出我们的程序。但是程序的效率很大程度上依赖锁使用组件的效率,我们不关注这些细节,可能别人已经写好了,但是我们却没正确的使用。Python 就有以本书叫《Python: Faster Way》,如果我们对 Python 常见数据结构有所了解,其时很自然的就会明白它们上面所说明的用法。