原生js實現二叉樹的遍歷

2021-09-09 06:03:21 字數 1146 閱讀 4256

首先我們要知道前序遍歷:中序遍歷,後序遍歷的概念:

前序遍歷:從雙親節點開始,遍歷左樹,再遍歷右樹;

中序遍歷:從左樹開始,再遍歷雙親節點,最後遍歷右樹;

後序遍歷:從左樹開始,再遍歷右樹,最後遍歷雙親節點;

核心演算法很簡單:建立乙個陣列,將當前的節點遞迴,演算法不同處只是在於陣列加入node節點的次序不一樣:

// 前序演算法

function beforeergodic(node)

}// 中序演算法

function middleergodic(node)

}// 後序演算法

function afterergodic(node)

}

完整的**展示:

前序中序

後序let btn0 = document.queryselectorall("button")[0];

let btn1 = document.queryselectorall("button")[1];

let btn2 = document.queryselectorall("button")[2];

let arr = ;

// 前序演算法

function beforeergodic(node)

}// 中序演算法

function middleergodic(node)

}// 後序演算法

function afterergodic(node)

}let showc = ['red', 'blue', 'green', 'yellow', 'orange', '#ccc', '#eee', 'purple'];

showc = showc.concat(showc);

function arrtodomshow() , index * 300)})}

btn0.addeventlistener("click", function () , 0)

});btn1.addeventlistener("click", function () , 0)

});btn2.addeventlistener("click", function () , 0)

})

參考自:

JS實現二叉樹的遍歷

二叉樹的遍歷指的是按照某種順序,依次訪問二叉樹的每個節點,有且訪問一次。二叉樹的遍歷有以下三種 1 前序遍歷,從根節點,到左子樹,再到右子樹,簡稱根左右。2 中序遍歷,從左節點,到根節點,再到右子樹,簡稱左根右。3 後序遍歷,從左子樹,到右子樹,再到根節點,簡稱左右根。1 doctype html ...

二叉樹層次遍歷(js

二叉樹 var node4 var node5 var node6 var node7 var node3 var node2 var node1 通過佇列,佇列先進先出 var levelorder function root let res 定義佇列que,起初存放根節點,代表第一層 let q...

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

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