18923 二叉树的直径 typedef struct treenode { int pn;//双亲结点所在下标 int lchild=0;//左孩子 int rchild=0;//右孩子 int maxlen=1;//以该结点为根节点的子树的深度 } Tree; Tree t[10005]; //A用于按输入顺序存储结点 int A[10005]; int main() { int Ans=0,j=0; int n; cin>>n; For(i,1,n) { int p,c; cin>>p>>c; if(i==1) A[j++]=p; if(!t[p].lchild)//p的左孩子为空 { t[c].pn=p; t[p].lchild=c; } else { t[c].pn=p;
2022-12-16 09:15:03 11KB 数据结构
1
前言 本篇章主要介绍哈夫曼树及哈夫曼编码,包括哈夫曼树的一些基本概念、构造、代码实现以及哈夫曼编码,并用Python实现。 1. 基本概念 哈夫曼树(Huffman(Huffman(Huffman Tree)Tree)Tree),又称为最优二叉树,指的是带权路径长度最小的二叉树。树的带权路径常记作: 其中,nnn为树中叶子结点的数目,wkw_kwk​为第kkk个叶子结点的权值,lkl_klk​为第kkk个叶子结点与根结点的路径长度。 带权路径长度是带权结点和根结点之间的路径长度与该结点的权值的乘积。有关带权结点、路径长度的概念请参阅这篇博客。 对于含有nnn个叶子结点的哈夫曼树,其共有
2022-12-16 00:15:41 213KB 哈夫曼树 学习 数据
1
1.综合应用 有N名学生,每名学生含有如下信息:学号、姓名、某四门课的成绩,并计算其总分,用一结构数组表示之。然后实现以下功能: (1) 将这些数据存放至文件stuf.dat中; (2)将文件中的数据读出至结构数组中,并显示之; (3)输出总分最高分和最低分的名字; (4)输出总分在340分,单科成绩不低于80分的名单; (5)求出各科平均分数; (6)按总分排名; (7)输出补考名单。 2. 折半查找实现 用折半查找法,实现对任意一组数据的查找。(任意一组数据,意味着需要先对数据列进行排序,然后才能用折半方法查找) 3. 二叉排序树的创建 输入任意的数列创建二叉排序树,输出先序、中序和后序的遍历结果。 要求:存储结构利用二叉链表 4. 快速排序 实现对任意一组数据的快速排序。 5. 2路-归并排序 实现对任意一组数据的2路-归并排序。
2022-12-15 22:57:32 24KB 二叉树应用 拆半查找
1
算法与数据结构课程设计源码与文档,题目为 约瑟夫问题和人事管理
2022-12-15 21:44:02 1.54MB 算法 数据结构
1
算法与数据结构课程设计源码与文档,题目为客房管理系统和哈夫曼树的编译系统
2022-12-15 20:22:43 648KB 算法 数据结构
1
(1)航班信息管理:每个航班基本信息的录入、修改与删除。 (2)航班坐位信息管理:每个航班坐位信息的录入、修改与删除。 (3) 机票预定管理:输入旅客基本信息,系统为旅客安排航班,打印取票通知和帐单; (4)退订机票管理:对退订机票信息进行判断、录入、修改与删除。 (5)查询信息:能够查询每个航班的基本信息、预定情况、旅客的基本信息等。 (6)统计信息:计算每个航班的满座率,统计旅客的乘坐次数数、乘坐总金额等。
2022-12-15 19:29:29 770KB 民航售票系统 数据结构 C语言
1
数据结构与算法 1 什么是数据结构? 数据结构是数据的组织、管理和存储格式,其使用目的是为了高效的访问和修改数据。 数据结构是算法的基石。如果把算法比喻成美丽灵动的舞者,那么数据结构就是舞者脚下广阔而坚实的舞台。 2 物理结构和逻辑结构的区别? 物理结构就像人的血肉和骨骼,看得见,摸得着,实实在在,如数组、链表。 逻辑结构就像人的思想和精神,它们看不见、摸不着,如队列、栈、树、图。 3 线性存储结构和非线性存储结构的区别? 线性:元素之间的关系是一对一的,如栈、队列。
2022-12-15 19:25:30 23KB 数据结构与算法
1
活期储蓄账目管理实验报告,完整版 程序实现账号的创建,登陆,销户以及登陆后对账号的处理,如存取款,转账等,条例明确,可方便修改
2022-12-15 17:08:21 1.75MB 数据结构 活期储蓄
1
数据结构课设报告-宿舍管理系统.doc
1
数据结构c语言版 实现顺序栈的抽象数据类型 实现顺序栈的建立、销毁、取栈顶元素、压栈、弹栈的运算 给出表达式的括号匹配检测算法 创建运算符栈和运算数栈 实现有一定通用性的程序,实现一个四则运算表达式的求解 实验代码 图片实现顺序栈的抽象数据类型
1