// 處理複雜形樹狀結構:
/** * params: 資料來源
* result: 存放結果的陣列
* key: 副本,存放上一次處理結果
* values: 副本
* * 應用場景: 最終是要到最後一層,需要用到每一層的節點的部分資料,最後需要組拼起這部分資料
* 解決思路: 遍歷資料來源,當遍歷的當前項中的資料有children節點,在該節點拷貝乙份副本,用個變數儲存,
* 用這個變數作為下一輪迴圈的副本,直到當前項中沒有children節點,最後將儲存下來的資料存放到 結果陣列中
* */
function
gettree
(params =
, result =
, keys =
, values =
)else)}
})}}
const datas =[,
]},,
]}]}
]let result =
gettree
(datas, result =
, keys =
, values =
)console.
log(
'源資料'
, datas)
console.
log(
'處理的結果'
js處理樹形結構資料過濾
最近專案經常遇到後台介面返回整個樹形結構,而前端展示只需要展示部分型別的資料,需要過濾一下,所以整理了乙個過濾方法。非層級結構時過濾非常簡單,只需要一層 就夠了 export function filtertree tree 而要做到子節點也過濾時就需要用到遞迴去過濾 思路梳理 迴圈陣列,然後過濾資...
1資料結構 複雜度問題
p3 03 資料結構與演算法概述 演算法 p4 04 演算法分析 時間複雜度分析1 2 事前分析估算方法 3 在研究演算法的效率時,我們只考慮核心 的執行次數,這樣可以簡化分析。p5 05 06演算法分析 時間複雜度分析2 3 p7 07 演算法分析 時間複雜度分析4 p808 演算法分析 時間複雜...
js資料結構與演算法 1
1.1反轉字串原理講解 原理 首先把句子分隔開,然後把字串變成乙個陣列,陣列中的先後順序就是單詞的先後順序,然後把每個陣列中的單詞進行反轉即可。let reverseword str return result.join console.log reverseword hello world oll...