Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

chenyuscu/DataStructure

Repository files navigation

DataStructure

这是基本数据结构及其算法的C++实现,涉及单链表、双链表、栈 、二叉树、并查集、哈夫曼树、平衡二叉树、二叉搜索树、堆、哈希表、图以及各种排序算法。


一、文件结构

1 单链表

  • CSDN博客链接:单链表
  • 主要介绍了单链表的基本操作。包括建表,插入,删除,逆序,判断是否为空,合并等。我这里写的是带有头结点的单链表,头结点保存链表长度。

2 双链表

  • 主要介绍了双链表的基本操作。包括建表,插入,删除,逆序,判断是否为空,合并,冒泡排序等。

3 栈

  • CSDN博客链接:栈的应用——表达式求值
  • 主要介绍了栈的应用——表达式求值。具体思路就是首先把输入的中缀表达式转换为后缀表达式,然后再根据后缀表达式进行计算求值。这份代码只能实现10以内的加减乘除。

4 二叉树操作

  • CSDN博客链接:二叉树的构建及其遍历算法
  • 主要介绍了二叉树的创建、先中后三种遍历方式的递归实现,再详细介绍先中后三种遍历方式的非递归实现与层次遍历。

5 二叉搜索树

  • CSDN博客链接:二叉搜索树
  • 主要介绍了二叉搜索树的创建、查找指定值结点、查找最大最小值、插入指定值、删除指定值,插入最大最小值、删除最大最小值操作

6 平衡二叉树

  • CSDN博客链接:平衡二叉树
  • 主要介绍了平衡二叉树的单左旋、单右旋、右左旋、插入指定值、删除指定值操作

7 哈夫曼树

  • 主要介绍了哈夫曼树与哈夫曼编码的建立

8 并查集

  • CSDN博客链接:并查集
  • 主要介绍了并查集的初始化、查找和并操作

9 并查集

9.1 最小堆

  • CSDN博客链接:最小堆
  • 主要介绍了最小堆的插入、删除与建堆的操作

9.2 最大堆

  • 主要介绍了最大堆的插入、删除与建堆的操作

10 图

10.1 邻接矩阵

10.2 邻接表

10.3 Prim算法

10.4 kruskal算法

10.5 Dijiksta算法

10.6 Floyd算法

10.7 拓扑排序

  • CSDN博客链接:拓扑排序
  • 主要介绍了邻接矩阵存储下的图的拓扑排序算法

11 哈希表

11.1 开放定址法

11.2 分离链接法

12 各种排序

About

这是基本数据结构及其算法的C++实现,涉及单链表、双链表、栈 、二叉树、并查集、哈夫曼树、平衡二叉树、二叉搜索树、堆、哈希表、图以及各种排序。

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

Contributors

Languages

  • C++ 100.0%

AltStyle によって変換されたページ (->オリジナル) /