满意答案

zaohengpfqk

2013.04.04

采纳率:40%    等级:12

已帮助:8438人

楼主你好,因技术有限,所以在网上找了一些相关的资料,希望可以帮助到你。树是一种简单的非线性结构,所有元素之间具有明显的层次特性。

在树结构中,每一个结点只有一个前件,称为父结点,没有前件的结点只有一个,称为树的根结点,简称树的根。每一个结点可以有多个后件,称为该结点的子结点。没有后件的结点称为叶子结点。

在树结构中,一个结点所拥有的后件的个数称为该结点的度,所有结点中最大的度称为树的度。树的最大层次称为树的深度。

二*树的特点:(1)非空二*树只有一个根结点;(2)每一个结点最多有两棵子树,且分别称为该结点的左子树与右子树。

二*树的基本性质:

(1)在二*树的第k层上,最多有2k-1(k≥1)个结点;

(2)深度为m的二*树最多有2m-1个结点;

(3)度为0的结点(即叶子结点)总是比度为2的结点多一个;

(4)具有n个结点的二*树,其深度至少为[log2n]+1,其中[log2n]表示取log2n的整数部分;

(5)具有n个结点的完全二*树的深度为[log2n]+1;

(6)设完全二*树共有n个结点。如果从根结点开始,按层序(每一层从左到右)用自然数1,2,….n给结点进行编号(k=1,2….n),有以下结论:

①若k=1,则该结点为根结点,它没有父结点;若k>1,则该结点的父结点编号为INT(k/2);

②若2k≤n,则编号为k的结点的左子结点编号为2k;否则该结点无左子结点(也无右子结点);

③若2k+1≤n,则编号为k的结点的右子结点编号为2k+1;否则该结点无右子结点。

满二*树是指除最后一层外,每一层上的所有结点有两个子结点,则k层上有2k-1个结点深度为m的满二*树有2m-1个结点。

完全二*树是指除最后一层外,每一层上的结点数均达到最大值,在最后一层上只缺少右边的若干结点。

二*树存储结构采用链式存储结构,对于满二*树与完全二*树可以按层序进行顺序存储。

二*树的遍历:

(1)前序遍历(DLR),首先访问根结点,然后遍历左子树,最后遍历右子树;

(2)中序遍历(LDR),首先遍历左子树,然后访问根结点,最后遍历右子树;

(3)后序遍历(LRD)首先遍历左子树,然后访问遍历右子树,最后访问根结点。

相关请访问 http://jinyichun1566.blog.163.com

10分享举报

树在计算机中用什么来储存,计算机中的树是什么相关推荐

  1. 在计算机系统中储存一个ASCII码,ascii码在计算机中用多少byte存放?

    ascii码在计算机中用1个byte[字节]存放,ASCII码共有128个字符,每一个字符对应一个数值,称为该字符的ASCII码值:计算机内部用一个字节[8位二进制位]存放一个7位ASCII码值. 本 ...

  2. 计算机二级二叉树基础知识,2017年计算机二级公共基础知识学习教程:树与二叉树...

    (六)树与二叉树 1.树的基本概念 树是一种简单的非线性结构.在树结构中,数据元素之间有着明显的层次结构.在树的图形表示中,用直线连接两端的结点,上端点为前件,下端点为后件. 在树结构中,每一个结点只 ...

  3. b+树的增删改查_考研计算机 | 如何理解m阶B树?

    2021计算机考研:如何理解m阶B树?对m阶B树定义的理解一棵m阶的B树满足下列条件:1.每个结点至多有m棵子树.2.除根结点外,其它每个分支至少有m/2棵子树.3.根结点至少有两棵子树(除非B树只有 ...

  4. 计算机存放程序和数据的设备是什么,计算机中用来存放程序和数据的部件是什么...

    计算机里用于存放程序和数据的东西叫做外辅存储器,简称外存储其实,比如固态硬盘.机械硬盘.U盘.磁盘.光盘等等都属于外存储器.它们的作用就是用于存放大量的数据以及软件的,并且能够长期存放,而短期存放数据 ...

  5. 四个字节与float的换算_float类型数字在计算机中用4个字节存储

    float类型数字在计算机中用4个字节存储.遵循IEEE-754格式标准: 一个浮点数有2部分组成:底数m和指数e 底数部分 使用二进制数来表示此浮点数的实际值 指数部分 占用8bit的二进制数,可表 ...

  6. 计算机中的树(来自百度百科)

    计算机科学中的树 二叉树 ▪二叉树 ▪二叉查找树 ▪笛卡尔树 ▪Top tree ▪T树         自平衡二叉查找树 ▪AA树 ▪AVL树 ▪红黑树 ▪伸展树 ▪树堆 ▪节点大小平衡树     ...

  7. springboot工科树洞网站的设计与实现 计算机毕设源码48510

    摘  要 随着互联网趋势的到来,各行各业都在考虑利用互联网将自己推广出去,最好方式就是建立自己的互联网系统,并对其进行维护和管理.在现实运用中,应用软件的工作规则和开发步骤,采用Java技术建设工科树 ...

  8. 老农的计算机学习笔记(一)计算机的诞生及其基础

    菜鸟的计算机学习笔记  ===================  2014-06-08    "万法归一" 改变世界的发明 计算工具的早期发展 计算机来源于人类对于计算工具的不断改 ...

  9. 东北大学计算机专业课考研试题,东北大学计算机2017-2019考研真题(2)

    东北大学计算机2017-2019考研真题(2)本站小编 免费考研网/2020-02-08 二. 编写算法题 1.编写算法判断字符串表示的出栈入栈序列是否合法,其中A代表入栈,D代表出栈,仅有这两个字符 ...

最新文章

  1. 人脸、人眼检测与跟踪
  2. 非常规解释:分类ML模型的十大模型性能指标
  3. 【机器学习算法-python实现】svm支持向量机(1)—理论知识介绍
  4. android 静态注册wifi广播,Android中BroadcastReceiver详解
  5. python 英语词频统计软件_为了边看美剧边学英语,我写了个字幕处理脚本
  6. Java学习笔记—UDP通信
  7. matlab通信工具comm,matlab无线通信例程及simulink仿真
  8. DatabaseMetaData的使用
  9. Linux下进程信息的深入分析
  10. Linux网卡驱动发送超时看门狗,如何在linux嵌入式中更改看门狗定时器
  11. C++ 有理数运算符重载
  12. C++学习记录3:定义一个矩形类Rectangle
  13. 解开MongoDB神秘的面纱
  14. 硬件加速 | 常用电路设计之PRBS伪随机码发生器的设计
  15. webpack打包路径更改_webpack打包教程
  16. 苹果8p电池多少毫安的_买得起手机未必用得起售后:苹果iPhone12修一下多少钱?|iphone12|手机|电池|iphone...
  17. 搞 AI 建模预测都在用 Python,其实入门用 SPL 也不错
  18. mysql安装以及安装navicat并且连接
  19. “@” Java中的特殊符号——注解(Java中’@‘符号是什么意思?)
  20. QT OpenGL图形放大缩小旋转移动

热门文章

  1. 对于物联网卡各种套餐我们应该如何选择?
  2. MACD常见的6种战法擒大牛
  3. jQuery拉开关闭帷幕
  4. 初探Redis整体架构
  5. YGC和FGC是什么
  6. php多表头表格,HTML多表头表格代码_HTML/Xhtml_网页制作
  7. osg拖曳器源码流程
  8. ssm网上购物系统 by sj ym 123361
  9. 简易机器人(基于Java)平台
  10. Mobx的使用与版本区别