关于三叉树的文本显示问题,用递归实现。。。

Vincent_0705 2013-05-22 04:20:32
最近要写一个项目,要用到三叉树。为了能方便的debug代码,直接显示三叉树的形状。就在网上搜了一下,只找到了二叉树的文本显示。函数如下:

typedef struct Node{
char data;
struct Node * Lchild;
struct Node * Rchild;
}BiTNode,*BiTree;//二叉树节点,二叉链表

执行函数时,为nlayer赋值为1。
void PrintTree(BiTree bt, int nlayer){
if(bt==NULL)
return;
PrintTree(bt->Rchild,nlayer+1);
for(int i=0;i<nlayer;i++)
printf(" ");
printf("%c\n",bt->data);
PrintTree(bt->Lchild,nlayer+1);
}

这个函数显示的结果还是比较满意的,本想把这个程序改一下,用来显示三叉树的,发现很困难,改了两三天都没有成功。哪位大侠指点一下。。?或者指点一下在哪里可以找到相关参考答案或者代码。

typedef struct ternary_tree_node
{
char key; //Notice: not a string!!!
int value;
struct ternary_tree_node * left;
struct ternary_tree_node * mid;
struct ternary_tree_node * right;
}TERNARY_NODE, * TERNARY_TREE;
...全文
172 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
Vincent_0705 2013-05-22
  • 打赏
  • 举报
回复
非常感谢你能关注回复我的帖子,如果只是简单的遍历问题,并不复杂。我也运行了你给出的函数,它是将所有节点的值先序遍历输出在同一行上。我想要的是和void PrintTree(BiTree bt, int nlayer)这个函数相似的功能,也就是说,将三叉树显示为下面的形式。(刚才回帖有点问题,自己又无法修改,只好重新回复一下。) b a c f e g
Vincent_0705 2013-05-22
  • 打赏
  • 举报
回复
非常感谢你能关注回复我的帖子,如果只是简单的遍历问题,并不复杂。我也运行了你给出的函数,它是将所有节点的值先序遍历输出在同一行上。我想要的是和void PrintTree(BiTree bt, int nlayer)这个函数相似的功能,也就是说,将三叉树显示为下面的形式。 b a c f e g
引用 1 楼 youyou1912 的回复:
先序遍历
void Print(ternary_tree_node* tree)
{
  if (tree == NULL) return;
  cout << tree->value << " ";
  Print(tree->left);
  Print(tree->mid);
  Print(tree->left);
}
youyou1912 2013-05-22
  • 打赏
  • 举报
回复
笔误: 第7行, tree->right
引用 楼主 u010795795 的回复:
youyou1912 2013-05-22
  • 打赏
  • 举报
回复
先序遍历
void Print(ternary_tree_node* tree)
{
  if (tree == NULL) return;
  cout << tree->value << " ";
  Print(tree->left);
  Print(tree->mid);
  Print(tree->left);
}
内容概要:本文针对传统三电平并网逆变器存在的谐波含量高、电网不平衡工况适应性差及动态响应滞后等问题,提出了一种基于有源中点箝位(ANPC)三电平逆变器的高性能并网控制策略。该策略融合了双极性倍频脉宽调制(DPWMA)、正负序分离锁相技术和电网电压前馈控制,构建了“精准同步-扰动补偿-优质调制”的一体化控制体系。通过Simulink搭建仿真模型,在稳态对称、电网不平衡及动态扰动等多种工况下进行验证,结果表明该复合控制策略能显著降低并网电流谐波,提升锁相精度,有效抑制功率波动,并大幅缩短系统动态调节时间,增强了逆变器在复杂电网环境下的稳定性与适应性。; 适合人群:从事电力电子、新能源并网、智能电网等相关领域的科研人员及工程技术人员,尤其适合具备一定MATLAB/Simulink仿真基础、专注于并网逆变器控制策略研究的研发人员; 使用场景及目标:①用于提升大功率并网逆变器在电网电压不平衡、骤升骤降等非理想工况下的运行性能;②为ANPC拓扑结构与先进控制算法(如DPWMA、前馈-反馈复合控制)的协同优化提供仿真依据和技术参考;③适用于新能源发电系统、工业变流装置等对电能质量和动态响应要求较高的应用场景; 阅读建议:建议读者结合文中提出的控制架构图与仿真模型逐步复现,重点关注DPWMA调制实现、正负序分离锁相环设计及前馈补偿环节的参数整定,同时通过多工况仿真对比分析各项性能指标,深入理解各模块间的协同作用机制。

70,038

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧