樹結構資料整理 列表處理成樹

2022-04-29 01:54:12 字數 834 閱讀 1241

一棵樹是有根節點的,根據根節點的資訊,可以用遞迴最終拼成一完整的樹。

專案裡有個選部門的對話方塊

要加個模糊查詢框,類似這種,本來覺得底層拼樹結構挺麻煩,結果仔細思考了一番,還挺簡單的。

主要思路就是找到最上層的節點,拼樹就容易了。首先寫個demo,a->b,c->d->e,f,acf 同層節點。

var list = [,,

,,,,

];

提取出父id 與子節點的對應資訊,具體流程就不寫了,結果要這種形式:

var p_id = ;
接著是具體處理流程:找到最上層的節點;如果不存在上層節點或子節點,判定為游離節點,則直接壓入

function a () );

if (temp && temp.length) );

if (p && !p.length)

res.push(temp[0]);

}} else );

res.push(temp[0]);}}

}}console.log(res);

}

根據找出來的最上層節點,遞迴找到其下子節點至葉子節點

function b(parent) );

if (temp && temp.length) }}

return temp;

}

最終搞定

資料結構與演算法 樹結構 二叉樹 筆記整理《十四》

優點 通過下標查詢查詢速度快 對有序陣列可以通過二分查詢提高速度 缺點 如果檢索某個具體的值或者插入元素,會整體移動效率低 優點 插入效率高 缺點 檢索時需要遍歷所有節點查詢 既保持了類似鍊錶結構的插入效率,又保持了查詢的效率,查詢的特點很類似於陣列的二分查詢,比如二叉樹 每個節點都一分為二,父節點...

JS資料結構(9) 樹結構,二叉樹

1.什麼是樹結構 樹結構是一種非線性結構,以分層的方式儲存資料。現實中關於樹結構的例子有家譜,還有公司的組織架構等。樹結構的抽象 樹結構的優點 每種資料結構都有自己特定的應用場景,樹結合了其他資料結構 陣列,鍊錶,雜湊表 的優點。在模擬某些場景時,我們使用樹結構會更加的方便。因為樹結構是非線性的,可...

利用MySQL排序將樹結構表資料封裝成樹結構物件

本人菜鳥乙個,望大家多多指教 需求 將具備樹結構的線性表遍歷出來,得到樹形結構的物件 解決思路 要不查詢整條記錄,要不查詢具備樹結構的部分資料。再通過具備樹結構的部分資料,將整條記錄封裝到物件中 怎麼查詢具備樹結構的部分資料 首先確定部分資料,我選擇記錄的id 那麼問題就變成怎麼生成具備一定規則的i...