树学习笔记(一):二叉树相关概念理解

一、为什么使用二叉树

    什么是树:它是由n(n>=1)个有限结点组成一个具有层次关系的集合。把它叫做“树”是因为它看起来像一棵倒挂的树,也就是说它是根朝上,而叶朝下的。且满足从从根节点出发,有且仅有一条路径到任意节点。

    首先先介绍数组和链表两种数据结构,其中数组查询快,但插入慢而链表刚好相反,而树的出现刚好弥补了两者的不足。

二、二叉树的相关概念

    树的结点(node):包含一个数据元素及若干指向子树的分支;

    孩子结点(child node):结点的子树的根称为该结点的孩子;

    双亲结点:B 结点是A 结点的孩子,则A结点是B 结点的双亲;

    兄弟结点:同一双亲的孩子结点; 堂兄结点:同一层上结点;

    祖先结点: 从根到该结点的所经分支上的所有结点子孙结点:以某结点为根的子树中任一结点都称为该结点的子孙

    结点层:根结点的层定义为1;根的孩子为第二层结点,依此类推;

    树的深度:树中最大的结点层

    结点的度:结点子树的个数

    树的度: 树中最大的结点度。

    叶子结点:也叫终端结点,是度为 0 的结点;

    分枝结点:度不为0的结点;

    有序树:子树有序的树,如:家族树;

    无序树:不考虑子树的顺序;

    二叉搜索树:一个节点的左子节点的关键字小于这个节点,右子节点的关键字大于等于这个父节点;

你可能感兴趣的:(树学习笔记(一):二叉树相关概念理解)