二叉樹前序遍歷 中序遍歷 後續遍歷 演算法實現

2021-06-18 23:16:20 字數 1180 閱讀 1202

掌握以下概念是必要的:

前序遍歷: 

1.訪問根節點 

2.前序遍歷左子樹 

3.前序遍歷右子樹 

中序遍歷: 

1.中序遍歷左子樹 

2.訪問根節點 

3.中序遍歷右子樹 

後序遍歷: 

1.後序遍歷左子樹 

2.後序遍歷右子樹 

3.訪問根節點

class binarytree 

}

$b1 = new binarytree(4);

$b2 = new binarytree(6);

$b3 = new binarytree(8);

$b4 = new binarytree(10);

$b5 = new binarytree(12);

$b6 = new binarytree(14);

$b7 = new binarytree(16);

$b4->left = $b2;

$b4->right= $b6;

$b2->left = $b1;

$b2->right= $b3;

$b6->left = $b5;

$b6->right= $b7;

function preprint($node)

print($node->value);echo "\n";

preprint($node->left);

preprint($node->right);

}preprint($b4);

echo "\n";

function midprint($node)

midprint($node->left);

print($node->value);echo "\n";

midprint($node->right);

}midprint($b4);

echo "\n";

function rightprint($node)

rightprint($node->left);

rightprint($node->right);

print($node->value);echo "\n";

}rightprint($b4);

二叉樹 前序遍歷 中序遍歷 後序遍歷

前序遍歷 dlr 是二叉樹遍歷的一種,也叫做先跟遍歷,先序遍歷,前序周遊,可記做根左右。前序遍歷首先訪問根節點然後遍歷左子樹,最後遍歷右子樹。前序遍歷首先訪問根節點然後遍歷左子樹,最後遍歷右子樹。在遍歷左 右子樹時,仍然先訪問根節點,然後遍歷左子樹,最後遍歷右子樹。若二叉樹為空則結束返回,否則 1 ...

二叉樹 前序遍歷 中序遍歷和後序遍歷

定義 樹是由結點或頂點和邊組成的 可能是非線性的 且不存在著任何環的一種資料結構。沒有結點的樹稱為空 null或empty 樹。一棵非空的樹包括乙個根結點,還 很可能 有多個附加結點,所有結點構成乙個多級分層結構。特點 樹狀圖是一種資料結構,它是由n n 0 個有限結點組成乙個具有層次關係的集合。把...

重建二叉樹 前序遍歷和中序遍歷

主要程式設計思想 由於前序遍歷第乙個數永遠是根,中序遍歷根左邊是左子樹,右邊衛右子樹。因此,每次找到乙個根節點,前序遍歷就可以分成左子樹序列和右子樹序列,中序遍歷也可以分成左子樹序列和右子樹序列,分別建立左子樹和右子樹,所以是非常典型的遞迴問題 treenode rebuildtree vector...