目录

  • 1 课程资料
    • 1.1 课程标准
    • 1.2 教学日历
    • 1.3 说课课件
  • 2 第一章绪论
    • 2.1 本章教学目标
    • 2.2 数据结构简介
    • 2.3 数据结构类型
    • 2.4 算法分析
    • 2.5 本章讲义
    • 2.6 本章测验题
    • 2.7 测验
  • 3 线性结构
    • 3.1 本章教学目标
    • 3.2 线性表
    • 3.3 线性表的顺序存储及运算实现
      • 3.3.1 本节讲义
    • 3.4 线性表的链式存储和 运算实现
      • 3.4.1 本节讲义
    • 3.5 应用
    • 3.6 数组
      • 3.6.1 讲义
    • 3.7 本章测验题
    • 3.8 测验
    • 3.9 作业
  • 4 第三章栈和队列
    • 4.1 本章教学目标
    • 4.2 第一课时栈
      • 4.2.1 讲义
    • 4.3 第二课时队列
      • 4.3.1 讲义
    • 4.4 应用
      • 4.4.1 讲义
    • 4.5 本章测验题
  • 5 第四章串
    • 5.1 第一课时概念
    • 5.2 本章学习目标
    • 5.3 本章测验题
  • 6 第五章树和二叉树
    • 6.1 本章学习目标
    • 6.2 第一课时树的定义及基本术语
    • 6.3 第二课时二叉树定义性质存储
    • 6.4 第三课时二叉树遍历
    • 6.5 第四二叉排序与平衡二叉树
    • 6.6 第五树森林二叉树之间转换
    • 6.7 第六课时哈夫曼树
    • 6.8 本章测验题
    • 6.9 测验
    • 6.10 作业
  • 7 第六章图
    • 7.1 本章学习目标
    • 7.2 第一课时图的基本概念
    • 7.3 第二课时图的存储
    • 7.4 第三课时图的遍历
    • 7.5 第四课时最小生成树
    • 7.6 第五课时最短路径
    • 7.7 第六课时拓扑排序
    • 7.8 第七课时关键路程
    • 7.9 本章测验题
    • 7.10 测验
    • 7.11 作业
  • 8 第七章查找
    • 8.1 本章学习目标
    • 8.2 第一课时顺序查找二分查找
    • 8.3 第二课时哈希表
    • 8.4 本章测验题
    • 8.5 测验
    • 8.6 作业
  • 9 第八章排序
    • 9.1 本章学习目标
    • 9.2 第一课时基本概念
    • 9.3 第二课时插入选择排序
    • 9.4 第三课时交换排序
    • 9.5 第四课时归并 基排序及比较
    • 9.6 本章测验题
    • 9.7 测验
    • 9.8 作业
第一课时树的定义及基本术语

掌握树的类型定义

掌握树的表示和实现

一定义

Tree)是nn0)个结点的有限集合T。当n=0时,称为空树;当n>0时, 该集合满足如下条件:

 (1) 其中必有一个称为根(root)的特定结点,它没有直接前驱,但有零个或多个直接后继。

 (2) 其余n-1个结点可以划分成mm0)个互不相交的有限集T1T2T3Tm,其中Ti又是一棵树,称为根root的子树。 每棵子树的根结点有且仅有一个直接前驱,但有零个或多个直接后继。 

树的表示

树形表示法

集合图表示

凹入表表示

广义表表示

基  本  术  语

Ë 结点的度:结点所拥有的子树的个数。

Ë  树的度:树中各结点度的最大值。

Ë 叶子结点:度为0的结点,也称为终端结点。

Ë  分支结点:度不为0的结点,也称为非终端结点。

Ë 孩子、双亲:树中某结点子树的根结点称为这个结点的孩子结点,这个结点称为它孩子结点的双亲结点;

Ë  兄弟:具有同一个双亲的孩子结点互称为兄弟。 

Ë 祖先:从根到该结点所经分支上的所有结点。

Ë 子孙:以某结点为根的子树中的任一结点都称为该结点的子孙。

Ë 结点所在层数:根结点的层数为1,根的孩子为第二层;对其余任何结点,若某结点在第k层,则其子树的根在第k+1层。

Ë  树的深度:树中所有结点的最大层数,也称高度。

层序编号:将树中结点按照从上层到下层、同层从左到右的次序依次给他们编以从1开始的连续自然数。

森林:

mm0)棵互不相交的树的集合。树中每个结点,其子树的集合称为森林。

任何一棵非空树是一个二元组

       Tree = rootF

其中:root 被称为根结点,    F 被称为子树森林