c语言如何构建一个静态二叉树
发表于:2024-11-24 作者:千家信息网编辑
千家信息网最后更新 2024年11月24日,这篇文章主要介绍"c语言如何构建一个静态二叉树"的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇"c语言如何构建一个静态二叉树"文章能帮助大家解决问题。第一、树的构
千家信息网最后更新 2024年11月24日c语言如何构建一个静态二叉树
这篇文章主要介绍"c语言如何构建一个静态二叉树"的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇"c语言如何构建一个静态二叉树"文章能帮助大家解决问题。
第一、树的构建
定义树结构
struct BTNode { char data; struct BTNode* pLChild; struct BTNode* pRChild; };
静态方式创建一个简单的二叉树
struct BTNode* create_list() { struct BTNode* pA = (struct BTNode*)malloc(sizeof(BTNode)); struct BTNode* pB = (struct BTNode*)malloc(sizeof(BTNode)); struct BTNode* pC = (struct BTNode*)malloc(sizeof(BTNode)); struct BTNode* pD = (struct BTNode*)malloc(sizeof(BTNode)); struct BTNode* pE = (struct BTNode*)malloc(sizeof(BTNode)); pA->data = 'A'; pB->data = 'B'; pC->data = 'C'; pD->data = 'D'; pE->data = 'E'; pA->pLChild = pB; pA->pRChild = pC; pB->pLChild = pB->pRChild = NULL; pC->pLChild = pD; pC->pRChild = NULL; pD->pLChild = NULL; pD->pRChild = pE; pE->pLChild = pE->pRChild = NULL; return pA; }
第二、树的三种遍历
1. 先序遍历
//先序输出 void PreTravense(struct BTNode* pHead) { if (NULL!= pHead) { printf("%c", pHead->data); if (NULL!= pHead->pLChild) { PreTravense(pHead->pLChild); } if (NULL != pHead->pRChild) { PreTravense(pHead->pRChild); } } }
2. 中序遍历
//中序输出 void InTravense(struct BTNode* pHead) { if (NULL != pHead) { if (NULL != pHead->pLChild) { PreTravense(pHead->pLChild); } printf("%c", pHead->data); if (NULL != pHead->pRChild) { PreTravense(pHead->pRChild); } } }
3.后续遍历
//后序输出 void PostTravense(struct BTNode* pHead) { if (NULL != pHead) { if (NULL != pHead->pLChild) { PreTravense(pHead->pLChild); } if (NULL != pHead->pRChild) { PreTravense(pHead->pRChild); } printf("%c", pHead->data); } }
第三、最终运行测试
int main() { printf("创建序列\n"); struct BTNode* pHead = create_list(); printf("先序输出\n"); PreTravense(pHead); printf("中序输出\n"); InTravense(pHead); printf("后序输出\n"); PostTravense(pHead); return 0; }
关于"c语言如何构建一个静态二叉树"的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识,可以关注行业资讯频道,小编每天都会为大家更新不同的知识点。
输出
静态
语言
知识
行业
不同
实用
内容
实用性
实际
序列
文章
方式
方法
更多
案例
知识点
篇文章
结构
资讯
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
手机如何制作数据库文件
cim模型 关系数据库
成华区网络安全平台
哪家的服务器便宜
涉及政府部门的网络安全法
请网络技术人员调qq记录
服务器改台式机
2008服务器管理器闪退
服务器可以当图形工作站吗
计算机网络技术与应用 课件
败笔网络安全技术
表格提取数据库数据
福建企业党性体检软件开发
中科院自然资源与地理数据库
常德市网络安全培训
天猫精灵服务器崩了咋办
网络安全领域重大收购
数据库制作教程
数据库表结构添加属性
金融科技助力互联网
微信的网络安全
数据库建立登陆密码
手机服务器怎么查
网络安全在哪里呀
浦东新区上门软件开发报价表
数据库是干嘛的
加强网络安全评论员文章
数据库技术与应用教材
添加字幕软件开发
秦皇岛市公安局网络安全