数据结构之判断一棵树是不是满二叉树
生活随笔
收集整理的這篇文章主要介紹了
数据结构之判断一棵树是不是满二叉树
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
1 滿二叉樹
除最后一層無任何子節點外,每一層上的所有結點都有兩個子結點的二叉樹。一個二叉樹,如果每一個層的結點數都達到最大值,則這個二叉樹就是滿二叉樹。也就是說,如果一個二叉樹的層數為K,且結點總數是(2^k) -1 ,則它就是滿二叉樹。
2 分析
我們知道滿二叉樹是三角形的比如如下,最后一層任何一個節點的高度都是數的高度。
12 3 4 5 6 7但是如下二叉樹就不是滿二叉樹
12 3 4 5我們知道滿二叉樹節點總數是 (2^k) -1個,那么我們只需要求出高度就知道所有數的所有節點總數,然后我們再通過按層打印看下所有節點總數是不是滿足滿二叉樹節點總數是 (2^k) -1的特點。
3 代碼實現
#include <iostream> #include <queue>using namespace std;typedef struct Tree {int value;struct Tree* left;struct Tree* right總結
以上是生活随笔為你收集整理的数据结构之判断一棵树是不是满二叉树的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 剑指offer之数组中的逆序对
- 下一篇: 数据结构之判断一棵树是不是完全二叉树