你所说的是满二叉树,完全二叉树最后一层的最后几个可以不铺满:
(图片来自 https://blog.csdn.net/bjyfb/article/details/7519360 )
满二叉树:perfect binary
完全二叉树:complete binary tree
真二叉树:full binary tree / proper binary tree / plane binary tree
满二叉树:除最后一层无任何子节点外,每一层上的所有结点都有两个子结点。
也就是除了最后一层的叶子结点上没有子结点之外 其余每层结点都有子结点
完全二叉树 :
定义一:用层次遍历来理解的话 就是层次遍历按顺序来一遍到某一位置停止,遍历过的结点全部存在
定义二:除了最下面一层,其他层结点都是饱满的,并且最下层上的结点都集中在该层最左边的若干位置上。(满二叉树也是完全二叉树)
非完全二叉树:既不是满二叉树,也非完全二叉树。
二叉树的遍历
前序遍历(先根遍历):根左右。
后序遍历(后根遍历):左右根。
中序遍历(中根遍历):左跟右。
层次遍历:一层一层自左向右。
例:
图中前序遍历结果是:1,2,4,5,7,8,3,6;
图中中序遍历结果是:4,2,7,8,5,1,3,6;
图中后序遍历结果是:4,8,7,5,2,6,3,1;
图中层次遍历结果是:1,2,3,4,5,6,7,8;
参考资料:https://blog.csdn.net/bjyfb/article/details/7519360