樹與二叉樹

2021-09-10 21:26:22 字數 871 閱讀 5387

對樹來說,結點的子樹是不區分左右順序的,因此度為2的樹只能說明樹中每個結點個數不超過2。而二叉樹雖然也滿足每個結點的度均不超過2,但是其子樹是講究左右順序的,不能隨意調換兩者位置,這便是二叉樹與度為2的樹最主要的區別。

1,滿二叉樹:每一層的結點個數都達到了當層能達到的最大結點數。

2,完全二叉樹:除了最下面一層之外,其餘層的結點個數都達到了當層能達到的最大結點數,且最下面一層只從左至右連續存在若干結點,而這些連續結點右邊的結點全部不存在。

二叉鍊錶定義如下:

struct node;
由於二叉樹建立前根結點為空

node* root = null;
如果需要建立新結點

node*  newnode(int v)
二叉樹結點的查詢、修改

void search(node* root,int x,int y,int newdata)

if(root->data == x)

search(root->lchild,x,newdata);

search(root->rchild,x,newdata);

}

二叉樹結點的插入

void insert(node*&root,int x)

if(由二叉樹性質,x應該插在左子樹)else

}

二叉樹的建立

node* create(int data,int n)

return root;

}

二叉樹 滿二叉樹與完全二叉樹

二叉樹 binary tree 是n n 0 個元素的有限集合,該集合為空或者為由乙個稱為 根 的元素及兩個不相交的 被分別稱為左子樹和右子樹的二叉樹組成 二叉樹的基本特點 每個結點最多有兩棵子樹 左子樹和右子樹是有順序的,且不可顛倒 圖一1 結點 二叉樹中的每乙個元素都稱為結點。通常二叉樹的許多名...

樹與二叉樹

樹是一類重要的非線性資料結構,是以分支關係定義的層次結構 定義 樹 tree 是n n 0 個結點的有限集t,其中 n 0時為空樹 n 0時,有且僅有乙個特定的結點,稱為樹的根 root 當n 1時,其餘結點可分為m m 0 個互不相交的有限集t1,t2,tm,其中每乙個集合本身又是一棵樹,稱為根的...

樹與二叉樹

建立 先序二叉樹,中序二叉樹,後序二叉樹。給定兩種遍歷序列 前序中序或後序中序 重塑二叉樹 遍歷 判斷乙個節點是否存在於二叉樹中 二叉樹的遍歷 先序,中序,後序 遞迴 非遞迴 層次遍歷 從上到下或從下到上列印 zigzag遍歷方式層次遍歷 二叉樹性質 二叉樹中葉子節點的個數 二叉樹第k層節點數目 二...