![](https://img-blog.csdnimg.cn/20201014180756923.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
数据结构
21世纪成精的二哈
这个作者很懒,什么都没留下…
展开
-
动态顺序表的实现
动态顺序表顺序表基本概念顺序表基本数据结构用数组表示用指针表示线性表基本操作初始化动态分配内存插入元素删除元素完整的测试用例顺序表基本概念顺序表是用一组连输地址实现的线性表,其优点是可以随机访问表中元素和修改指定位置元素比较简单,但插入和删除元素需要移动元素,表长扩展也比较麻烦.顺序表基本数据结构用数组表示 typedef struct{ ElenType data[MaxSize]...原创 2019-05-25 11:16:28 · 1381 阅读 · 0 评论 -
数据结构基础知识
数据结构基础知识数据的基本概念数据结构的"三要素"算法基本概念算法特性算法目的算法效率的度量时间复杂度:空间复杂度数据的基本概念数据:数据是信息的载体,是描述事物属性的数字符号以及所有能输入到计算机中被程序识别和处理的符号的集合.数据元素:数据的基本单位,通常作为一个整体进行考虑和处理.数据项:构成数据元素的不可分割的最小单位.数据对象:具有相同性质的数据元素的集合.数据类型:是一个值...原创 2019-05-18 08:45:00 · 230 阅读 · 0 评论 -
单链表的实现
单链表的实现单链表基本概念单链表的实现基本结构初始化操作添加元素插入元素删除元素查找元素完整测试用例单链表基本概念单链表是一种单向的线性表,不需要连续的存储空间.插入删除操作不需要移动元素,只需要改变指针.但是访问元素不是随机的,必须从表头开始依次向后搜索.访问时间和访问位置有关.单链表的实现基本结构typedef struct SeqList{ ElemType dat...原创 2019-05-25 15:01:01 · 195 阅读 · 0 评论 -
带头尾指针的循环链表
循环链表循环链表基本概念循环链表实现基本数据结构初始化操作添加元素表尾添加元素表头添加元素获得元素查找元素插入元素删除元素测试用例循环链表基本概念循环链表是在单链表基础上将队尾的指针指向表头,循环链表可以在表头和表尾操作.而且可以很好的解决插入或删除高于表长的问题(运用取模运算)相较上一篇的单链表(用0元素填充)有更方便的操作方式.循环链表实现基本数据结构typedef int Elem...原创 2019-05-25 17:33:53 · 5962 阅读 · 1 评论 -
带首尾指针栈的构建(基于顺序机构)
栈的构建顺序栈的基本概念栈基本操作的实现(基于顺序结构)存储结构初始化操作入栈操作出栈操作完整测试用例顺序栈的基本概念栈是受限的线性表,其只允许在栈首进行插入和删除操作。栈在表达式求值、过程调用、递归过程和消除递归中有很中很要的作用。栈基于顺序结构的好处是避免了指针的使用(可用整数来表是栈首的位置)易于理解,但缺点是大小固定(解决方法是动态的分配内存,具体可参见我的动态分配顺序表一文,这里不过...原创 2019-05-28 10:37:14 · 273 阅读 · 0 评论 -
栈的实现(基于链式结构)
栈的链式结构链式栈基本概念栈的基本操作基本结构节点主体初始化操作入栈操作出栈操作完整的测试用例链式栈基本概念相较于顺序结构链式结构的好处是大小是不固定的但指针操作比较复杂。这里依旧使用了带首尾指针的方式。这样的好处是容易用来实现受限栈的实现,这里不做过多赘述。有兴趣的小伙伴可以自己动手实现,这里给出一个参考例题(首端插入,两端输出的栈)感兴趣的小伙伴可以一起交流一下栈的基本操作基本结构这...原创 2019-05-28 10:54:42 · 408 阅读 · 0 评论 -
仅有尾指针的队列(基于顺序结构)
队列的顺序存储结构队列基本概念顺序队列的实现结构体定义初始化操作入队操作出队操作完整的测试用例队列基本概念队列是一种操作受限的线性表,其只允许在一端插入(入队操作),一端删除(出队操作)。顺序存储结构使用一块连续的存储结构存储队列,其形式上易于理解,但队大小固定,且每次出队操作都需要移动元素,但这和实际生活非常类似,算法过程非常形象。顺序队列的实现结构体定义这里使用尾指针来表示队尾位置,...原创 2019-05-29 10:19:33 · 754 阅读 · 0 评论 -
队列的实现(基于链式结构)
链式对列的实现链式队列基本概念队列的实现结构体定义初始化操作入队操作出队操作完整的测试用例链式队列基本概念队列是受限的线性表,使用链式存储结构的好处是,队的大小不固定可以动态变化。队列的实现结构体定义typedef int ElemType;typedef struct item{ ElemType data; item* next;};typedef struct...原创 2019-05-29 10:27:21 · 423 阅读 · 0 评论 -
二叉树的递归实现
二叉树的基本操作(基于递归结构)二叉树基本概念基本操作的实现二叉树的构建二叉树的先序遍历二叉树的中序遍历二叉树的后序遍历二叉树的层次遍历二叉树的高完整的测试用例二叉树基本概念树是复杂的非线性结构,二叉树是其中的一种特殊的树。二叉树的非跟节点有且仅有一个父亲节点,所有节点最多有两个子节点。本文先是使用递归的方法将用户输入的数组用递归的方法生成一个二叉树,在对这个二叉树实现二叉树的基本操作——先...原创 2019-07-01 13:07:04 · 658 阅读 · 0 评论