考研複習之二叉樹

2021-10-07 17:27:02 字數 1091 閱讀 3022

怎麼碩呢?

之前學的二叉樹基本上忘得差不多了

今天大概複習了一下,今天結合考研的書(王道)重新寫了一遍。

包括:遞迴前中後序,非遞迴前中後序,層序遍歷以及二叉樹的構建。

參考了書中的**,所以很接近考研的思路和習慣,廢話不多說了,上**。

#include #include #include #include #include #include using namespace std;

typedef struct bitnode ;

struct bitnode *t;

struct bitnode *creat_bitnode(struct bitnode *s)

struct bitnode *creat_bitnode_by_zero(struct bitnode *t)

struct bitnode *creat_bitnode_by_level(struct bitnode *t)

scanf("%d",&x);;//右子樹建立

if(x==0) s->rchild = null;

else

} return t;

} void preordertree(struct bitnode *t)

}void inordertree(struct bitnode *t)

}void postordertree(struct bitnode *t)

}void preorderwithoutrecursion(struct bitnode *t)

else

} printf("\n");

}void inorderwithoutrecursion(struct bitnode *t)

else

} printf("\n");

}void postorderwithoutrecursion(struct bitnode *t)elseelse

}

} printf("\n");

}void levelordertree(struct bitnode *t)

}int main()

二叉樹之 二叉樹深度

二叉樹深度 獲取最大深度 public static int getmaxdepth treenode root 二叉樹寬度 使用佇列,層次遍歷二叉樹。在上一層遍歷完成後,下一層的所有節點已經放到佇列中,此時佇列中的元素個數就是下一層的寬度。以此類推,依次遍歷下一層即可求出二叉樹的最大寬度 獲取最大...

樹之二叉樹

二叉樹是每個結點最多有兩個子樹的有序樹。通常子樹的根被稱作 左子樹 left subtree 和 右子樹 right subtree 二叉樹常被用作二叉查詢樹和二叉堆或是二叉排序樹。滿二叉樹 在二叉樹的第i 層上有2 i 1 個結點,深度為k的二叉樹有2 k 1個結點的二叉樹。則此二叉樹稱為 滿二叉...

c 列印二叉樹 考研資料結構演算法之二叉樹

查詢二叉樹值為x的結點。查詢二叉樹中值為x的結點 求二叉樹的高度 int 列印二叉樹 void 輸出葉子結點 void 先序遍歷非遞迴演算法 演算法思想1 二叉樹的層次遍歷 層次遍歷 編寫在以bst為樹根指標的二叉搜尋樹上進行查詢值為item的結點的非遞迴演算法,若查詢成功能則由item帶回整個結點...