博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
二叉树的顺序存储
阅读量:2241 次
发布时间:2019-05-09

本文共 845 字,大约阅读时间需要 2 分钟。

//二叉树的顺序存储结构 #define MAX_TREE_SIZE 100typedef int TElemType;TElemType Nil=0;//设整型以0为空typedef TElemType SqBiTree[MAX_TREE_SIZE];//0号单元存储根结点

未完,写作整理中。。。

 2018-11-14   22:19:09

二叉树的性质:

1,在二叉树的第i层上至多有2i-1个结点(i>=1)。

ps:归纳法易证。

2,深度为k的二叉树至多有2k-1个结点(k>=1)。

3,n0=n2+1

4,具有n个结点的完全二叉树的深度为[log2n](down)+1 

 二叉树的基本操作:

 

 

 

/*初始化树*/

 

1 int InitBiTree(SqBiTree T) 2 { 3     int i; 4     for(i=0;i

 

 

 

/*创建树*/

1 int CreateBiTree(SqBiTree T) 2 { 3     int i=0; 4     int l=0; 5     char s[MAX_TREE_SIZE]; 6     printf("请按顺序输入结点的值,空格表示空结点,结点数<=%d\n",MAX_TREE_SIZE); 7     gets(s); 8     l=strlen(s);//strlen("hello")返回的结果是5,是不包含字符串结尾处的‘\0’, 9                 //但是strcpy(str1,str2),会拷贝str2中的‘\0’。10     for(;i

 

/*计算树的深度*/

/*判断树是否为空*/

BT数组中的下标与二叉树节点按层次遍历编号 如图:

 

根节点与左右子树的编号规律:

 

参考资料:https://www.cnblogs.com/zlspace/p/6831293.html

转载于:https://www.cnblogs.com/wanwujiexu/p/9960775.html

你可能感兴趣的文章
Java 中int、String的类型转换
查看>>
比较两个JSON字符串是否完全相等
查看>>
删除JSONArray中的某个元素
查看>>
Linux下Tomcat重新启动
查看>>
使用HttpClient请求另一个项目接口获取内容
查看>>
HttpClient get和HttpClient Post请求的方式获取服务器的返回数据
查看>>
net.sf.json Maven依赖配置
查看>>
Could not initialize class net.sf.json.JsonConfig错误解决
查看>>
Java编程思想重点笔记(Java开发必看)
查看>>
eclipse 创建maven 项目 动态web工程完整示例
查看>>
前端JSP与Spring MVC交互实用例子
查看>>
使用maven一步一步构建spring mvc项目
查看>>
hadoop map reduce 阶段笔记
查看>>
java jackcess 操作 access
查看>>
Git问题Everything up-to-date解决
查看>>
Hadoop HDFS文件操作的Java代码
查看>>
Hadoop学习笔记—3.Hadoop RPC机制的使用
查看>>
Hadoop学习笔记—22.Hadoop2.x环境搭建与配置
查看>>
JTS Geometry关系判断和分析
查看>>
GIS基本概念
查看>>