图解数据结构
文章平均质量分 94
用动态图的方式介绍数据结构与算法,清晰直白的帮助大家理解这门课程。
知心宝贝
生于尘埃 溺于人海 死于理想高台
展开
-
【图解数据结构】树和二叉树全面总结(下)
一、前言学习目标: 重点:二、树的存储结构1.双亲表示法 实现: 定义结构数组来存放树的结点,每个结点包含两个域 数据域(data):存放结点本身信息 双亲域(parent):本结点的双亲在数组中的位置结构体:# define MAX_TREE_SIZE 100typedef struct PTNode { //结点结构 TElemType data; int parent; //保存双亲位置} PTNode;typedef s原创 2022-01-14 15:43:41 · 2040 阅读 · 72 评论 -
【图解数据结构】树和二叉树全面总结(中)
目录一、前言二、二叉树的遍历1.先序遍历2.中序遍历3.后序遍历4.层次遍历三、遍历算法的应用1.建立二叉链表存储的二叉树2.输出叶子结点3.统计二叉树叶子结点数目4.求二叉树高度5.按树状打印二叉树四、线索二叉树1.基本概念2.基本结构3.建立中序线索化二叉树一、前言学习目标:掌握二叉树的先序、中序、后序、层次遍历,对于遍历算法的五个应用要求掌握、线索二叉树的基本结构和基本概念 重点:先序、中序、后序遍历、线索二叉树叶子结..原创 2022-01-03 20:02:15 · 4946 阅读 · 70 评论 -
【图解数据结构】树和二叉树全面总结(上)
一、前言学习目标: 重点: 难点:二、树的概念和定义定义:n(n>=0)个结点的有限集合,n=0,空树 结点:表示树中的元素 根结点:第一个元素 叶结点:度为0,即没有子树 双亲结点:结点的直接前驱 孩子结点:结点的直接后继 兄弟结点:同一双亲结点的孩子 结点的度:结点的子树个数 结点的层次:根节点层次为1,依次向下加一 树的度:树中所有结点度的最大值 树的高度:树中所有结点层次的最大值 森林:m(m>=0)棵互不相交树的集合例题:求出..原创 2022-01-01 19:40:26 · 4790 阅读 · 48 评论 -
【图解数据结构】队列全面总结
一、前言二、基本概念 定义:队列是允许在一端插入,另一端删除的线性表 队头(front):允许删除的一端 队尾(rear):允许插入的一端 特点:先进先出 三、队列的表示和实现...原创 2021-12-26 19:52:19 · 3968 阅读 · 59 评论 -
【图解数据结构】栈全面总结
一、前言掌握栈这种抽象数据类型的特点,在相应的实际问题中正确应用 掌握栈类型的两种实现方法二、基本概念定义:只允许在一端进行插入或删除的线性表 栈顶(top):允许进行插入或删除的一端 栈底(bottom):与栈顶相对应的一端 特点:先进后出三、栈的表示和实现1.顺序栈定义:一组地址连续的存储单元依次存放自栈底到栈顶的数据元素 top :用来表示栈顶元素的位置 top==-1表示空栈 top==NULL表示栈不存在 top>stacksize....原创 2021-12-23 19:31:36 · 11368 阅读 · 92 评论 -
【图解数据结构】排序全面总结(二)
一、前言二、选择类排序选择类:每次从待排序的无序序列中,选择一个最大或最小的数字,放到前面,数据元素为空时排序结束1.简单选择排序动态演示:算法讲解:首先通过n-1次比较,从n个记录中找出最小值,将它与第一个元素交换 再通过n-2次比较,从剩余的n-1个记录中找出次小的值,将它与第二个记录交换 重复上述操作n-1,排序完成代码:void SelectSort(RecordType r[], int length)/*对记录数组r做简单选择排序,..原创 2021-12-16 16:10:00 · 4908 阅读 · 82 评论 -
【图解数据结构】排序全面总结(一)
一、前言学习目标:排序和查找密不可分,将待处理的数据按关键值大小有序排列后,查找更加快速准确 理解各种排序算法的定义和特点,并能将代码灵活运用 掌握各种排序方法时间复杂度与空间复杂度 理解排序稳定和不稳定的概念 重点和难点: 希尔、快速、堆、归并排序这几种快速排序二、基本概念1.排序定义:将一个无序的数据元素任意序列,重新排列成有序的过程代码:typedef struct{ int key; //假设关键...原创 2021-12-13 12:17:46 · 6077 阅读 · 84 评论 -
【图解数据结构】数组和广义表全面总结
一、数组的定义1.基本概念数组:按照一定格式排列同属性的值,为相同数据类型元素的集合。常用的有一维数组A[5]、二维数组A[5][5]、多维数组等。 二维数组:通常把二维数组作为多维数组的代表,可以看出m个n维的线性表组成,如:2.抽象数据类型 ADT Array {数据对象:D={aj1j2…jn | ji =0,...,bi-1, i=1,2,..,n, n(>0)称为数组的维数,bi是数组第i维的长度, ji是数组元素的第i维下标,aj1j2…jn∈El...原创 2021-12-10 15:06:44 · 9178 阅读 · 61 评论 -
【图解数据结构】串全面总结
目录一、基本概念二、串的类型1.定长顺序串2.堆串3.块链串三、模式匹配四、总结与提高一、基本概念串(string):由0个或多个字符组成的有序序列,称为字符串,记为s='abcdefg' 其中s是字符串的名字,a b c称为串的值,可以是字母、数字或者字符 串长度:串中元素个数 空串:不含任何字符的串,串长度为0 子串:主串中任意连续字符组成的字符串 串s1、s2相等的条件: s1、s2长度相等 s1、s2对应位置的元素处处相等 二、串的类.原创 2021-12-06 17:16:48 · 12003 阅读 · 71 评论