/DataStructure

数据结构的原理及实现代码

Primary LanguageCApache License 2.0Apache-2.0

DataStructure

数据结构的原理和实现代码;C语言实现;C代码片段;C代码库;

注:因为在GitHub上不方面展示大量的文字和图标说明,具体原理与实现的过程请移步我的CSDN博客:https://kyleshawe.blog.csdn.net/

01 线性表(Linear List)

顺序表(Sequence List)

线性顺序表

核心本质:就是数组!

链式顺序表

核心本质:链表!

有以下类别:
(1) 不带头节点单链表
(2) 带头结点单链表
(3) 双链表
(4) 循环单链表

队列(Queue)

核心本质:想象你我在排队买票时的情景:从队伍的后面进入,然后从队伍的前面出来;即先进先出。

线性队列

用数组实现!

链式队列

用链表实现!

栈(Stack)

核心本质:想象你有一个桶,你的所有球的直径和桶口径一样大。你依次放入ABC三个球,这时我叫你取B球,你必须先把C球取出来。即后进先出。

线性栈

用数组实现!

链式栈

用链表实现!

02 排序(Sort)

插入类排序

选择类排序

交换类排序

归并类排序

非比较类排序

外排序

03 二叉树(Tree)

树的名词介绍

二叉树的存储结构

二叉树的创建和遍历

线索二叉树

哈弗曼树

04 图(Graph)

存储结构

遍历

最小生成树

对短路径

拓扑排序

关键路径

05 查找(Search)

顺序表查找

有序表查找

线性索引查找

平衡二叉树查找

多路查找树

散列表查找