Code Monkey home page Code Monkey logo

datastructure's Introduction

DataStructure

这是基本数据结构及其算法的C++实现,涉及单链表、双链表、栈 、二叉树、并查集、哈夫曼树、平衡二叉树、二叉搜索树、堆、哈希表、图以及各种排序算法。该项目使用dev 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 各种排序

datastructure's People

Contributors

daipuwei avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.