广度优先搜索树中遇到的实际问题,急切等待答案!!!

YUTIANMAJI YUTIANMAJI 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
//下面是对树的节点定义
#define MAX_TREE_SIZE 100
struct PTNode
{TElemType data;
int parent;//双亲位置域
};
struct PTree
{
PTNode nodes[MAX_TREE_SIZE];
int n;//节点数
};
//构造空树
Status IniTree(PTree &T)
{T.n=0;//构造空树
return OK;
}
typedef struct
{
int num;
TElemType name;
}QElemType;//定义队列元素类型
//构造树(

Status CreateTree(PTree &T)
{
LinkQueue q;
QElemType p,qq;
int i=1,j,l;
char c[MAX_TREE_SIZE];//临时存放孩子结点数组
InitQueue(q);//初始化队列
printf("请输入根结点(字符型,空格为空): ");
scanf("%c%*c",&T.nodes[0].data);//根结点序号为0,%*c吃掉回车符
if(T.nodes[0].data!=Nil)//非空树
{T.nodes[0].paraent=-1//根结点无双亲
qq.name=T.nodes[0].data;
qq.num=0;
EnQueue(q,qq);//入队此节点
while(i<MAX_TREE_SIZE&&!=QueueEmpty(q))//数组队列不为空
{
DeQueue(q,qq);//出队一个结点
printf("请按长幼顺序输入结点%c的所有孩子: ",qq.name);
gets(c);
l=strlen(c);
for(j=0;<1;++)
{
T.nodes[i].data=c[j];
T.nodes[i].parent=qq.num;
p.name=c[j];
p.num=i;
EnQueue(q,p);//入队此节点
i++;
}
}
if(i>MAX_TREE_SIZE)
{printf"结点数超过数组容量\n")
exit(OVERFLOW);
}
T.n=i;
}
else
T.n=0;
return OK;
}
下面需要用广度优先方法遍历树,得到记录每层节点个数的一维数组G[level],和记录包含每一层具体节点的二维数组CJ[M,M],我就不会了,望高手给点建议
int level;
int G[N];
int GJ[M,M];
...全文

相关推荐

第六章树无答案.zip

综上所述,“第六章树无答案.ppt”很可能涵盖了这些主题,包括树的定义、特性、遍历方法、操作以及树在各种IT场景中的应用。学习并掌握这些知识点对于理解和解决许多计算机科学问题至关重要。

等天晴i

从刷题到构建体系:一本通算法与数据结构学习价值重估

算法与数据结构是计算机科学的核心基础,其原理在于通过特定的数据组织方式和操作规则,高效地解决计算问题。掌握这些基础技术能显著提升程序性能与问题解决能力,在信息学竞赛、软件开发、系统设计等场景中至关重要。本文以《信息学奥赛一本通》为例,探讨如何超越“题库”认知,利用其精心编排的测试数据和递进式章节,系统构建算法知识体系。书中涉及的堆排序算法、动态规划等热词内容,正是连接抽象理论与工程实践的关键节点。通过理解数据结构(如栈、队列、树)的应用场景与变体,学习者能将基础概念转化为解决复杂问题的实际能力,从而在在线评

lloydsheng

广度优先搜索

**广度优先搜索(Breadth-First Search, BFS)**广度优先搜索是一种图论中的搜索算法,它按照从源节点开始,逐层探索节点的顺序进行搜索。BFS 主要应用于解决以下两类问题:1.

weixin_38522323

搜索基础!!!

穷举法穷举法是最基本的搜索方法之一,它通过尝试所有可能的解来找到正确答案。这种方法虽然简单,但在处理问题规模较小或解空间有限的情况下非常有效。

kgn28

重庆大学图论习题答案(龚劬)

图的遍历:深度优先搜索(DFS)和广度优先搜索(BFS)。这两种算法在寻找路径、判断连通性等问题中发挥关键作用。4. 树的概念:树的性质、生成树、最小生成树(如Prim算法和Kruskal算法)。

神哥3208
评论 11
收藏 已收藏
分享
返回顶部
YUTIANMAJI
新手乐园 33,315 成员 41,769 内容