数据结构
文章平均质量分 61
C语言数据结构的代码及内容
Calvador
重庆邮电大学
展开
-
数据结构期末常考编程题
【代码】数据结构期末常考编程题。原创 2024-06-26 19:48:21 · 134 阅读 · 0 评论 -
数据结构——排序(期末总结)
假设第一个元素是已经排好序的元素,从第二个元素开始依次插入操作,大的放后面,小的放前面。原创 2024-06-19 18:40:53 · 425 阅读 · 0 评论 -
数据结构——希尔排序
对直接插人的改进。原创 2024-05-15 21:21:36 · 285 阅读 · 1 评论 -
数据结构——直接插入排序
再插入第i个元素时,前面i-1个已经排好序。原创 2024-05-15 20:58:57 · 543 阅读 · 0 评论 -
数据结构——堆排序
堆是具有下列性质的完全二叉树:每个结点的值都小于或等于其左右孩子结点的值(称为小根堆) 或 每个结点的值都大于或等于其左右孩子结点的值(称为大根堆)。原创 2024-05-08 23:16:15 · 631 阅读 · 1 评论 -
数据结构——二叉排序树
(1)若它的左子树不空,则左子树上所有结点的值均小于根结点的值;(2)若它的右子树不空,则右子树上所有结点的值均大于根结点的值;以左子树中最大的节点或右子树中最小的节点替代被删除的节点。中序遍历二叉排序树可以得到一个按关键码有序的序列。2、被删除的节点只有左子树或只有右子树。(3)它的左右子树也都是二叉排序树。3、被删除的节点既有左子树又有右子树。也可用循环进行多次插入。1、删除节点为叶子结点。通过递归的方法来定义。原创 2024-05-05 20:58:57 · 489 阅读 · 2 评论 -
数据结构——散列表
思路:在存储位置和关键码之间建立一个确定的对应关系。原创 2024-05-05 16:13:36 · 772 阅读 · 2 评论 -
数据结构——链表
由若干节点组成,单链表的结点只有一个指针域单链表的结点结构。原创 2024-04-23 15:09:46 · 1654 阅读 · 0 评论 -
数据结构——哈夫曼树
1、叶子结点的权值:数值量(往往反映频率)2、二叉树的带权路径长度:设二叉树具有个带权值叶子结点,从根结点到各个叶子结点的路径长度与相应叶子结点权值的乘积之和。3、哈夫曼树:给定一组具有确定权值的叶子结点,带权路径长度最小的二叉树。第三个最小,所以为哈夫曼树。原创 2024-04-20 19:13:08 · 834 阅读 · 0 评论 -
数据结构——二叉树遍历(非递归)
二叉树前序遍历的非递归算法的关键:在前序遍历完某结点的整个左子树后,如何找到该结点的右子树的根指针。解决办法:在访问完该结点后,将该结点的指针保存在栈中,以便以后能通过它找到该结点的右子树。前序遍历非递归原理图:1、边访问边进栈2、左子树为空时,出栈,结点返回,转向右子树当栈为空且p=NULL时,前序遍历完毕伪代码:while (p!=1)while(p!=NULL)=1)原创 2024-04-20 17:05:55 · 908 阅读 · 0 评论 -
数据结构——线索二叉树(不重要)
保存二叉树的某种遍历序列——采用链式存储。原创 2024-04-20 16:34:39 · 241 阅读 · 0 评论 -
数据结构——二叉树
(1)每个节点最多两颗子树(2)是有顺序的。次序不能颠倒(3)与树差别很大注:树与二叉树的比较。原创 2024-04-20 12:16:51 · 952 阅读 · 0 评论 -
数据结构---树
链表中每个结点包括一个数据域和多个指针域,每个指针域指向该结点的一个孩子结点。1、双亲表示法:用一维数组来存储树的各个结点,按层序存储(实质是静态链表)查找双亲(可不用循环),寻找孩子(需要循环进行查找),查找兄弟节点。child1~childn :指向该结点的孩子。遍历的实质:树结构(非线性结构)→线性结构。(1)结点的度:结点所拥有的子树最大个数。(4)层序遍历——从上往下遍历每行。(2)树的度:结点的度的最大值。(3)叶子结点:度为零的结点。(1)前序遍历——根左右。(2)后序遍历——左右根。原创 2024-04-20 10:02:12 · 317 阅读 · 0 评论