順序儲存二叉樹的遍歷

2021-10-03 10:22:29 字數 1242 閱讀 3619

package com.datastructure.tree.binarytree;

/** * 順序儲存二叉樹

* * 1。順序儲存二叉樹通常只考慮完全二叉樹

* 2。第n個元素的左子節點為2*n+1

* 3。第n個元素的右子節點為2*n+2

* 4。第n個元素的父親節點為(n-1)/2

*/public class sequentialstoragebinarytree ;

arrbinarytree arrbinarytree = new arrbinarytree(arr);

system.out.println("前序遍歷");

arrbinarytree.preorder();

system.out.println("中序遍歷");

arrbinarytree.middleorder();

system.out.println("後序遍歷");

arrbinarytree.lastorder();

}}class arrbinarytree

//為了是有方便,過載方法preorder

public void preorder()

//為了是有方便,middleorder

public void middleorder()

//為了是有方便,過載方法preorder

public void lastorder()

//順序儲存二叉樹前序遍歷,根左右

public void preorder(int rootnode)

//遞迴遍歷右子樹

if ((2*rootnode+2)<=arr.length-1)

}//順序儲存二叉樹中序遍歷 左根右

public void middleorder(int rootnode)

//輸出根

system.out.println(arr[rootnode]);

//遞迴遍歷右子樹

if ((2*rootnode+2)<=arr.length-1)

}//順序儲存二叉樹後序遍歷 左右根

public void lastorder(int rootnode)

//遞迴遍歷右子樹

if ((2*rootnode+2)<=arr.length-1)

//輸出根

system.out.println(arr[rootnode]);

}}

二叉樹順序儲存實現遍歷

一 對於完全二叉樹可以將其資料元素逐層存放到一組連續的儲存單元中,用一維陣列作為儲存結構,對於編號為i的結點,其左孩子為2i,右孩子為2i 1.二 實現 及驗證主函式 演算法思想 遍歷演算法的核心任然是遍歷,所想得到的結果是乙個輸出序列,將該輸出序列置於乙個陣列中,再按該序列輸出二叉樹。二叉樹按順序...

二叉樹的遍歷 二叉樹遍歷與儲存

在資料結構中,二叉樹是非常重要的結構。例如 資料庫中經常用到b 樹結構。那麼資料庫是如何去單個查詢或者範圍查詢?首先得理解二叉樹的幾種遍歷順序 先序 中序 後序 層次遍歷。先序 根節點 左子樹 右子樹 中序 左子樹 根節點 右子樹 後序 左子樹 右子樹 根節點 按層級 class node if c...

順序二叉樹的遍歷

我們今天學習了二叉樹的先序中序後序的遍歷方法,發在部落格上希望大家可以討論一下,利於學習!巨集定義 全域性變數定義 二叉樹的二叉鍊錶儲存結構型別定義 建立二叉樹 先序順序建立 先序遍歷二叉樹 中序遍歷二叉樹 後序遍歷二叉樹 銷毀二叉樹 層次遍歷 主函式 include include using n...