树的基本概念:

树是一种数据结构,它是由n(n>=1)个有限结点组成一个具有层次关系的集合。

把它叫做“树”是因为它看起来像一棵倒挂的树,也就是说它是根朝上,而叶朝下的。

树的特点:每个结点有零个或多个子结点;没有父结点的结点称为根结点;每一个非根结点有且只有一个父结点;除了根结点外,每个子结点可以分为多个不相交的子树;

树结构是一种非线性存储结构,存储的是具有“一对多”关系的数据元素的集合


术语

节点深度:对任意节点x,x节点的深度表示为根节点到x节点的路径长度。根节点深度为0,第二层节点深度为1,以此类推

树的深度:一棵树中节点的最大深度就是树的深度

父节点:若一个节点含有子节点,则这个节点称为其子节点的父节点

子节点:一个节点含有的子树的根节点称为该节点的子节点

节点的层次:从根节点开始,根节点为第一层,根的子节点为第二层,以此类推

度:节点的子树数目就是节点的度,节点中最大的的度称为数的度

叶子节点:度为零的节点就是叶子节点


【典型题】

设一棵树的度为4,其中度为4,3,2,1的结点个数分别为2,3,3,0.则该棵树中的叶子结点数为(  )

答案为 16

白羊叔的解答:树的度为4意思就是这棵树中所有节点的叶子数最大的就是4

在一棵树中叶子节点必有是有的,也就是度为0的节点一定是有的

两个公式

总节点数=不同的节点数目相加

总节点数=2+3+3+0+x

总节点=度数*对应的节点数的和+1

总节点数=4*2+3*3+2*3+10+x*0+1


练习

1.设一棵树的度为3,其中度为3,2,1的结点个数分别为4,1,3,则该棵树中的叶子结点数为()。

A.10

B.11

C.12

D.不可能有这样的树

正确答案:A

2. 度为3的一棵树共有30个结点,其中度为3.1的结点个数分别为3.4则该树中的叶子结点数为()。

A.14

B.15

C.16

D.不可能有这样的树

正确答案:B

二级公共基础知识_二级公共基础知识 01相关推荐

  1. 计算机教室如何防火,2020校园防火安全小知识_消防安全小知识顺口溜

    消防安全知识必须人人懂,火灾隐患无处不在,稍不注意就容易引发大祸.所以,我们要从身边做起,从自己做起.以下是小编整理了关于2020校园防火安全小知识_消防安全小知识顺口溜,希望你喜欢. 校园防火安全小 ...

  2. 电脑的基础知识_电脑的基础知识大全,你确定都知道?

    电脑的基础知识大全,你确定都知道? 一.软件系统 软件系统包括:操作系统.应用软件等.应用软件中电脑行业的管理软件,IT电脑行业的发展必备利器,电脑行业的erp软件. 二.硬件系统 硬件系统包括:机箱 ...

  3. python3.6基础知识_新手零基础学Python3.6入门知识笔记速来取,持续更新

    最近自己在学习Python与人工智能的课程,我把最近学习的课程内容发给大家,我用XMind整理一些知识点,算是比较完善的笔记,我考试复习都是看它,希望对大家有帮助,后期也会慢慢更新,可以关注我的公众号 ...

  4. 电脑的基础知识_电脑入门基础知识

    电脑入门基础知识 学习电脑应该先了解电脑的基本的组件,然后学习操作,包括键盘.鼠标的使用,能基本使用操作系统,再学习打字. 作为一个电脑小白,想要学习电脑,首先要知道如何操作,学习打字,接着就是熟练使 ...

  5. python语法基础知识-python_基础知识_安装和基础语法

    一.python安装 先在官网,找到所属系统的安装环境.建议选择3.x 建议选择安装稳定版本. 选择自行配置安装环境. 直接选择Next,进行下一步. 选择安装目录. 安装页面,等待安装. 安装完成, ...

  6. 电脑的基础知识_电脑键盘功能基础知识

    点击上方蓝字关注我们 一.单键功能 取消光标行,但不删除内存内容,它在不同的环境中有不同的用途 [F1]在DOS操作系统中,你经常会发现按F1会弹出帮助选项,而在Windows操作系统中,如果你在一个 ...

  7. scrum知识_专注于基础知识:掌握Scrum的艺术

    scrum知识 严格遵守Scrum规则可能会使我们误入歧途. 要掌握Scrum,我们必须学会取消学习. 使真正有效的Scrum团队更注重原则而不是规则. 许多软件团队练习敏捷开发. 敏捷仅仅是软件开发 ...

  8. mysql 知识_关于mysql基础知识的介绍

    一.启动与退出1.进入MySQL:启动MySQL Command Line Client(MySQL的DOS界面),直接输入安装时的密码即可.此时的提示符是:mysql> 或打开终端,输入SQL ...

  9. python图形编程基础知识_少儿Python基础(14) | 图形用户界面编程(1)–easygui

    可爱的小朋友们,相信小朋友对哪些带有按钮,文本,输入框这些窗口的都不陌生了,这就是图形用户编程. 目前有很多Python的GUI工具包可以选择,那今天我们来学习GUI的一个很简单的工具包easygui ...

  10. 强化学习之基础入门_强化学习基础

    强化学习之基础入门 Reinforcement learning is probably one of the most relatable scientific approaches that re ...

最新文章

  1. 1/r单中心双电子积分Li+
  2. openssl 学习之从证书中提取RSA公钥N 和 E
  3. 【2018.3.17】模拟赛之二-ssl1862jzoj1366 删数【区间dp】
  4. lombok依赖_使用Lombok 前你需要知道这些
  5. [学习笔记]半平面交
  6. 如何高效管理我的时间?——时间会给你最好的答案
  7. Winter is coming,明星公司也裁员了...
  8. 小程序中添加快递查询
  9. 缺钱的特斯拉,是否在走向“乐视化”?
  10. Application,Session,Cookie和ViewState等对象用法和区别
  11. 转帖:django中操作mysql
  12. 数据挖掘导论学习---1
  13. NSA的各种***工具
  14. 单片机原理与c语言程序设计付先成版答案,单片机原理与C语言程序设计
  15. Excel如何构建简单的透视表
  16. 手机uc7.2java版下载_UC浏览器 JAVA
  17. 利用VMWare和软路由多播实现校园网带宽叠加
  18. PS常用平面设计制作尺寸
  19. 加入合作伙伴计划应留意的5个危险信号
  20. c语言 已知5名同学的4门成绩,已知5个学生的4门课的成绩,要求求出每个学生的平均成绩,然后对平均成绩从高到低将各学生的成绩排 序记录...

热门文章

  1. 百度站内搜索应该注意哪些方面?
  2. 左右db_block_size了解和实验
  3. Amoeba Architecture
  4. 学习三层结构心得(一)
  5. 10.高性能MySQL --- 复制
  6. 19.TCP/IP 详解卷1 --- TCP 的交互数据流
  7. 14. YAML(1)
  8. php中的数值型字符串相加 相比较( ==)
  9. 知乎;如何帮助前端新人入门和提高?
  10. Oracle 迁移至 MySQL 后 需要修改的SQL语句 小总结