学习来源:计蒜客
重学数据结构系列之链接汇总:
重学数据结构系列之——八大排序算法 http://blog.csdn.net/u012763794/article/details/51189364
重学数据结构系列之——静态查找表查找算法 http://blog.csdn.net/u012763794/article/details/51180845
重学数据结构系列之——静态查找表查找算法 http://blog.csdn.net/u012763794/article/details/51180845
重学数据结构系列之——图论算法之Dijkstra算法 http://blog.csdn.net/u012763794/article/details/51170814
重学数据结构系列之——图论算法之Prim算法 http://blog.csdn.net/u012763794/article/details/51114024
重学数据结构系列之——图论算法之FloodFill 算法 http://blog.csdn.net/u012763794/article/details/51113362
重学数据结构系列之——图的遍历(广度优先搜索和深度优先搜索) http://blog.csdn.net/u012763794/article/details/51081830
重学数据结构系列之——图的储存 http://blog.csdn.net/u012763794/article/details/51103766
重学数据结构系列之——森林之并查集(Disjoint set) http://blog.csdn.net/u012763794/article/details/51081830
重学数据结构系列之——堆及堆排序 http://blog.csdn.net/u012763794/article/details/51002372
重学数据结构系列之——平衡树之SB Tree(Size Blanced Tree) http://blog.csdn.net/u012763794/article/details/50973773
重学数据结构系列之——二叉排序树 http://blog.csdn.net/u012763794/article/details/50967631
重学数据结构系列之——二叉树基础 http://blog.csdn.net/u012763794/article/details/50953067
重学数据结构系列之——哈希表 http://blog.csdn.net/u012763794/article/details/50947869
重学数据结构系列之——栈 http://blog.csdn.net/u012763794/article/details/50931335
重学数据结构系列之——队列 http://blog.csdn.net/u012763794/article/details/50926237
重学数据结构系列之——线性表基础http://blog.csdn.net/u012763794/article/details/50915846
重学数据结构系列之——图论算法之FloodFill 算法 http://blog.csdn.net/u012763794/article/details/51113362
重学数据结构系列之——图的遍历(广度优先搜索和深度优先搜索) http://blog.csdn.net/u012763794/article/details/51081830
重学数据结构系列之——图的储存 http://blog.csdn.net/u012763794/article/details/51103766
重学数据结构系列之——森林之并查集(Disjoint set) http://blog.csdn.net/u012763794/article/details/51081830
重学数据结构系列之——堆及堆排序 http://blog.csdn.net/u012763794/article/details/51002372
重学数据结构系列之——平衡树之SB Tree(Size Blanced Tree) http://blog.csdn.net/u012763794/article/details/50973773
重学数据结构系列之——二叉排序树 http://blog.csdn.net/u012763794/article/details/50967631
重学数据结构系列之——二叉树基础 http://blog.csdn.net/u012763794/article/details/50953067
重学数据结构系列之——哈希表 http://blog.csdn.net/u012763794/article/details/50947869
重学数据结构系列之——栈 http://blog.csdn.net/u012763794/article/details/50931335
重学数据结构系列之——队列 http://blog.csdn.net/u012763794/article/details/50926237
重学数据结构系列之——线性表基础http://blog.csdn.net/u012763794/article/details/50915846
全部代码:https://github.com/giantbranch/reLearnDataStruct
1.大概说说有什么用
前几天,基本重学了数据结构,数据结构到底有什么用呢?我们现代计算机实现的很多东西都是对现实的一种抽象,比如把火车看成链表,把碟盘子看成栈,把城市及其之间的距离看成图,把人的每一次的选择看成树,电脑的目录就是一个目录树,树还可实现哈夫曼编码。那么学习数据结构最重要的我觉得应该学会抽象。
2.还有什么呢
如果每句代码都是自己手打的,还加了不少注释,那么你的编程能力提高了吧,还有很多数据结构对应的算法,开阔眼界了吧。重复一下,每句代码都是自己手打的,基本都加了注释,这样你会感觉到进步
3.知识性总结
从线性表,链表,队列栈,哈希表,树和图,这是简单到复杂,链表某些情况就是树的特殊情况(比如整棵树只有右子树,每个结点都只有右子树)
共同点:
1.基本都是一个结点的数据结构,不同的数据结构结点的属性略有所不同,属性基本就决定了每个结点的关系,有没父亲,左右孩子,还是上一个下一个的指针,
2.还有数据结构的算基本都会有插入,查找,删除等
除了一些数据结构的算法,还会接触到查找算法(顺序查找,二分查找,还有就是利用哈希表结构的查找,这个就是动态查找表了),最后还可能会接触到排序算法,就是常说的八大排序算法(要理解每种算法的原理,为什么这样可以排序成功)
最后最重要的,一定要自己写代码,写跟不写完全两个样,写上自己的注释就最好啦,相当于自己思考了嘛,可以的话也可以像我写在博客上