广工anyview数据结构第七章(2021.12)
广工anyview数据结构习题第七章,
在学习过程中部分题目参考了Giyn 、戮漠、雁过留痕等大佬的代码,在此感谢。
题目解法不是最优解,但希望能给大家有所启发。同时也发了文档资源,需要可自取。
目录
DC07PE15
DC07PE17
DC07PE22
DC07PE24
DC07PE26
DC07PE63
DC07PE15
试编写算法,对一棵以孩子兄弟链表表示的树统计叶子的个数。孩子兄弟链表类型定义∶
typedef struct CSTNode {
TElemType data;
struct CSTNode *firstChild,*nextSibling;
} CSTNode,*CSTree;
要求实现下列函数∶
int Leave(CSTree T); /* 统计树T的叶子数 */
#include "allinclude.h" //DO NOT edit this line
int Leave(CSTree T)
{ // Add your code hereif(T==NULL)return 0;
if(T->firstChild==NULL)return (1+Leave(T->nextSibling));
else return ( Leave(T->nextSibling) + Leave(T->firstChild) );}
DC07PE17
试编写算法,求一棵以孩子兄弟链表表示的树的度。孩子兄弟链表类型定义∶
typedef struct CSTNode {
TElemType data;
struct CSTNode *firstChild, *nextSibling;
} CSTNode,*CSTree;
要求实现下列函数∶
int Degree(CSTree T); /* 求树T的度*/
#include "allinclude.h" //DO NOT edit this line
int Degree(CSTree T)
{ // Add your code here
if(T==NULL)return 0;
void Degree1(CSTree T, int &maxnum);
int maxnum=0;Degree1(T,maxnum);
return maxnum;
}void Degree1(CSTree T, int &maxnum)
{
if(T==NULL)return ;
if(T->firstChild!=NULL)
{int n=1;CSTree temp=T;temp=temp->firstChild;while(temp->nextSibling!=NULL){temp=temp->nextSibling;n++;}maxnum= maxnum>n ? maxnum : n;
} Degree1(T->firstChild,maxnum); Degree1(T->nextSibling,maxnum);
}
DC07PE22
试编写算法,对以双亲表示法存储的树计算深度。树的双亲表示法的类型定义如下∶
typedef struct {
TElemType data;
int parent; //双亲位置
} PTNode; //结点类型
typedef struct {
PTNode nodes[MAX_TREE_SIZE]; // 结点存储空间
int n,r; // 结点数和根的位置
}PTree;
要求实现以下函数∶
int PTreeDepth(PTree T); /*求树T的深度 */
#include "allinclude.h" //DO NOT edit this line
int PTreeDepth(PTree T)
{ // Add your code here
if(T.n==0)return 0;
int max=0,i=T.n,num;
PTNode temp;
while(i>0)
{num=0;temp=T.nodes[--i];while(temp.parent!=-1){num++;temp=T.nodes[temp.parent];}if(num>max)max=num;
}
return max+1; //加上根结点}
DC07PE24
试编写算法,对以双亲孩子表示法存储的树计算深度。
孩子链表类型定义∶
typedef struct ChildNode {
int childIndex; // 孩子结点
struct ChildNode *nextChild;
}ChildNode; //孩子节点类型
typedef struct {
TElemType data;
int parent; // 双亲位置
struct ChildNode *firstChild; // 孩子链表头指针
}PCTreeNode; // 结点类型
typedef struct {
PCTreeNode *nodes; //结点存储空间
int n,r; //结点数和根的位置
} PCTree;
要求实现下列函数∶
int PCTreeDepth(PCTree T); /* 求树T的深度*/
#include "allinclude.h" //DO NOT edit this line
int PCTreeDepth(PCTree T)
{ // Add your code here
if(T.n==0)return 0;
int max=0,i=T.n,num;
PCTreeNode temp;
while(i>0)
{num=0;temp=T.nodes[--i];while(temp.parent!=-1){num++;temp=T.nodes[temp.parent];}if(num>max)max=num;
}
return max+1; //加上根结点}
DC07PE26
试编写算法,对以孩子-兄弟链表表示的树计算深度。孩子兄弟链表类型定义∶
typedef struct CSTNode {
TElemType data;
struct CSTNode *firstChild,*nextSibling;
} CSTNode,*CSTree;
要求实现下列函数∶
int TreeDepth(CSTree T); /*求树T的深度*/
#include "allinclude.h" //DO NOT edit this line
int TreeDepth(CSTree T)
{ // Add your code here
if(T==NULL)return 0;
int dep1,dep2,dep;
dep1=TreeDepth(T->firstChild);
dep2=TreeDepth(T->nextSibling);
dep= (dep1+1)>dep2 ? (dep1+1) : dep2;return dep;
}
DC07PE63
试编写非递归算法,实现并查集带路径压缩的查找操作。并查集的类型定义如下∶
typedef struct {
int *parent;
int n;
}MFSet;
实现下列函数∶
int find(MFSet S,int i);
/* 并查集带路径压缩的查找的非递归实现 */
#include "allinclude.h" //DO NOT edit this line
int find(MFSet S, int i)
{ // Add your code here
if(i<0 || i>=S.n)return -1;
if(S.parent[i]<0)return i;int temp=i,temp1=i;
while(S.parent[temp]>=0){temp=S.parent[temp];}while(temp1!=temp)
{temp1=S.parent[i];
S.parent[i]=temp;
i=temp1;
} return temp;
}
广工anyview数据结构第七章(2021.12)相关推荐
- 广工anyview数据结构第四章(2021.12)
广工anyview数据结构习题第四章, 在学习过程中部分题目参考了Giyn .戮漠.雁过留痕等大佬的代码,在此感谢. 题目解法不是最优解,但希望能给大家有所启发.同时也发了文档资源,需要可自取. 目录 ...
- 2021 广工 Anyview 数据结构第 5 章
/********** [题目]试编写如下定义的递归函数的递归算法:g(m,n) = 0 当m=0,n>=0g(m,n) = g(m-1,2n)+n 当m>0,n>=0 ****** ...
- 广工Anyview数据结构2021-C语言版--第一章
将三个整数按升序重新排列 算法思考: //首先随机比较三选二 /* 算法实现原理: 若a<b,则交换a,b,使得a>b,进而继续比较a.c,若a<c,则交换a ...
- 广工 AnyviewC 数据结构习题 第四章
广工 AnyviewC 数据结构习题 第四章 广工 AnyviewC 数据结构习题 第四章 1[题目]已知某哈希表的装载因子小于1,哈希函数H(key) 2[题目]假设哈希表长为m,哈希函数为H(x) ...
- 广工 AnyviewC 数据结构习题 第五章
广工 AnyviewC 数据结构习题 第五章 广工 AnyviewC 数据结构习题 第五章 1[题目]试编写如下定义的递归函数的递归算法: 2[题目]试写出求递归函数F(n)的递归算法: 3[题目]求 ...
- 厦门大学c语言第七八章作业答案,数据结构第七章考试题库(含答案).doc
数据结构第七章考试题库(含答案).doc 第七章 图一.选择题1图中有关路径的定义是( ).[北方交通大学 2001 一.24 (2分)]A由顶点和相邻顶点序偶构成的边所形成的序列 B由不同顶点所形成 ...
- 数据结构题及c语言版严第七章答案,数据结构第七章习题答案.doc
数据结构第七章习题答案 PAGE PAGE 9 第7章 <图>习题参考答案 一.单选题(每题1分,共16分) ( C )1. 在一个图中,所有顶点的度数之和等于图的边数的 倍. A.1/2 ...
- 大话数据结构 第七章 图(二) 最小生成树、最短路径、拓扑排序、关键路径算法
大话数据结构 第七章 图(二) 最小生成树.最短路径.拓扑排序.关键路径算法 最小生成树 定义 Prim算法 Kruskal算法 最短路径 Dijkstra算法 Floyd算法 拓扑排序 AOV网 拓 ...
- 数据结构题及c语言版答案第七章,数据结构第七章习题答案
第七章 图 1.下面是一个图的邻接表结构,画出此图,并根据此存储结构和深度优先搜索算法写出从C开始的深度优先搜索序列. 0 A 1 3 ^ 1 B 3 5 ^ 2 C 3 0 ^ 3 D 4 ^ 4 ...
- C语言数据结构-第七章图-电大同步进度
第七章图 内容简介 图结构中结点之间的关系是任意的,每个元素都可以和其他任何元素相关,即元素之间是多对多的关系. 图作为一种非线性数据结构,被广泛应用于多个技术领域,例如系统工程.化学分析.统计力学. ...
最新文章
- 国产首款脑机编解码集成芯片发布
- 自学了python基础英语_Python自学路线图之Python基础自学
- 怎么从转移特性曲线上看dibl_「科普向」这篇让你快速搞懂IGBT的静态特性
- STM32F103_步进电机
- java redis pipeline,巧用 Redis pipeline 命令,解决真实的生产问题
- SQLyog数据库:主键外键代码添加
- 热敏电阻、RTD、热电偶的原理和特性
- 什么是软件验收测试?验收测试的标准和流程介绍
- vscode插件快餐教程(3) - Diagnostic
- python摄像头识别快递单号,python 人脸识别以及条码识别(快递出库软件)
- 【BZOJ4598】[Sdoi2016]模式字符串 树分治+hash
- GD32450i-EVAL学习笔记 1 - 准备工作
- [C]验证哥德巴赫猜想(输入一个偶数始终等于两个素数之和,附个人编写的代码)
- 【项目】数仓项目(八)
- 怎么计算机械加工产能,生产计划人员如何计算一个工厂生产产能?..doc
- agc001E BBQ Hard
- RPA077-调用飞书API发送文件(.net→c#)
- Android获取通话记录
- 单片机编程软件很简单(14),Keil单片机编程软件断点设置
- 地平线语音识别算法实习面试
热门文章
- Jpa 注解详解 映射详解 一对多 多对一
- U-Net网络模型(添加通道与空间注意力机制)代码---亲测提高精度
- win10系统安装virtualbox虚拟机win7系统过程记录
- python输入名字配对情侣网名_情侣名字配对网名可爱
- android项目图片分辨率转换工具
- 2023北京国际老年产业博览会/养老产业展/养老服务业展
- 分享一下申请CSDN博客专家成功后的好处
- 为什么微博超话显示服务器有点累,微博超话帖子被吞是什么原因?使用时,注意这些事项...
- phalapi做登录检测_Phalapi使用教程
- ubuntu16.04/20.04 xfce4以及windows下面使用护眼软件redshift