龙空技术网

超简单!非递归实现二叉树的创建,用C语言告诉你~

高校孟小阿 467

前言:

眼前姐妹们对“二叉树算法c语言”大概比较珍视,咱们都需要了解一些“二叉树算法c语言”的相关资讯。那么小编同时在网摘上收集了一些有关“二叉树算法c语言””的相关文章,希望咱们能喜欢,姐妹们快快来学习一下吧!

改写邻域第三篇:超简单!非递归实现二叉树的创建,用C语言告诉你~最近整理了一下数据结构试验,有些值得记录之处想跟大家分享一下~

小青蛙,呱呱呱~~~

递归创建二叉树

此处省略,算法编程简单,但效率低,还容易导致堆栈溢出。

非递归创建二叉树

思想:先创建根节点,并用节点变量(p)记录以及计数变量(count)赋值为0,当再次输入数据时,用count%2==0判断是左节点还是右节点。(具体见下图)

函数以及变量声明

步骤:循环(判断输入数据是否为“#”,若是则退出)——> 创建节点空间 ——> 如果输入“@”,则将节点空间赋值为NULL,else初始化节点空间(如果节点为根节点则不入队)——> 节点为根节点则用根节点变量及节点变量记录根节点,否则判断count%2==0来给根节点连接左右子节点(如果根节点连接了右子节点,则出队)——> 继续输入数据,计数加一——>输入“#”退出,给出提示,函数返回根节点。

标签: #二叉树算法c语言 #c二叉树 #c语言树非递归算法 #用非递归方法实现递归算法 #数据结构c语言二叉树的建立