最近在做面试题时由于和同学对树的层,深度高度等概念理解的分歧然后 看了下Wiki对binary tree的定义,又读了一篇文章(作者 skyline0623 在文章:关于二叉树,我们的中国特色),发现关于二叉树的一些概念国内和国外定义的区别,然后整理了一下 希望可以在碰到不同情况对各种名称能正确理解文章意思。
首先贴上Wiki中对二叉树的这几种类型的定义:
1.满二叉树(full binary tree):
1.1 直接定义:除根节点以外的每个节点要么有0个要么2个节点,
1.2 递归形式的定义:
要么只有一个顶点,
要么由一个顶点和(包含)两个满二叉树作为其子树。
2.完全二叉树(complete):
除了最后一层其他每一层都是完全填满的,而最后一层从左往右依次排列。