最近抽空整理了"数据结构和算法"的相关文章。在整理过程当中,对于每种数据结构和算法分别给出"C"、"C++"和"Java"这三种语言的实现;实现语言虽不一样,但原理一模一样。所以,读者在了解和学习的过程当中,择其一便可!算法
下面是整理数据数据和算法的目录表,对于每一种按照C/C++/Java进行了划分,方便查阅。若文章有错误或纰漏,请不吝指正。谢谢!数组
C | C++ | Java | |
线性结构 | 1. 数组、单链表和双链表数据结构 2. Linux内核中双向链表的经典实现数据结构和算法 |
数组、单链表和双链表 | 数组、单链表和双链表 |
栈 | 栈 | 栈 | |
队列 | 队列 | 队列 | |
树形结构 | 二叉查找树 | 二叉查找树 | 二叉查找树 |
AVL树 | AVL树 | AVL树 | |
伸展树 | 伸展树 | 伸展树 | |
1. 红黑树(一)之 原理和算法详细介绍post 2. 红黑树(二)之 C语言的实现学习 3. 红黑树(三)之 Linux内核中红黑树的经典实现url 4. 红黑树(六)之 参考资料spa |
1. 红黑树(一)之 原理和算法详细介绍htm 3. 红黑树(六)之 参考资料 |
3. 红黑树(六)之 参考资料 |
|
哈夫曼树 | 哈夫曼树 | 哈夫曼树 | |
... | |||
堆 | 二叉堆 | 二叉堆 | 二叉堆 |
左倾堆 | 左倾堆 | 左倾堆 | |
斜堆 | 斜堆 | 斜堆 | |
二项堆 | 二项堆 | 二项堆 | |
斐波那契堆 | 斐波那契堆 | 斐波那契堆 | |
... | |||
图 | 图的理论基础 | 图的理论基础 | 图的理论基础 |
1. 邻接矩阵无向图 2. 邻接表无向图 3. 邻接矩阵有向图 4. 邻接表有向图 |
1. 邻接矩阵无向图 2. 邻接表无向图 3. 邻接矩阵有向图 4. 邻接表有向图 |
1. 邻接矩阵无向图 2. 邻接表无向图 3. 邻接矩阵有向图 4. 邻接表有向图 |
|
深度优先搜索和广度优先搜索 | 深度优先搜索和广度优先搜索 | 深度优先搜索和广度优先搜索 | |
拓扑排序 | 拓扑排序 | 拓扑排序 | |
Kruskal算法 | Kruskal算法 | Kruskal算法 | |
Prim算法 | Prim算法 | Prim算法 | |
Dijkstra算法 | |||
... | |||
排序算法 | 冒泡排序 | 冒泡排序 | 冒泡排序 |
快速排序 | 快速排序 | 快速排序 | |
直接插入排序 | 直接插入排序 | 直接插入排序 | |
希尔排序 | 希尔排序 | 希尔排序 | |
选择排序 | 选择排序 | 选择排序 | |
堆排序 | 堆排序 | 堆排序 | |
归并排序 | 归并排序 | 归并排序 | |
桶排序 | 桶排序 | 桶排序 | |
基数排序 | 基数排序 | 基数排序 | |
... | |||
to be continued(未完待续)...