前端要樹(shù)形數(shù)據(jù),分分鐘丟給他
2023-08-21 20:42 作者:輕珘已過(guò)萬(wàn)重山 | 我要投稿


本質(zhì)上和視頻中的是一樣的,都是廣搜。
只不過(guò)寫法不同。其實(shí)視頻中的也是廣搜,而通常情況下,我會(huì)在排序中加入一些業(yè)務(wù)代碼,比如異常判斷等等。
不過(guò)排序這玩意寫不出花來(lái)。要么遞歸,本質(zhì)走DFS,但是會(huì)導(dǎo)致浪費(fèi)無(wú)用的解空間(遞歸的時(shí)候搜索樹(shù)很大)。
要么就是視頻和我這種,BFS,空間換時(shí)間,時(shí)間復(fù)雜度O(n),維護(hù)一個(gè)隊(duì)列。其實(shí)我在生產(chǎn)中還遇到過(guò)數(shù)據(jù)特別大(>1000w)的排序情況。這個(gè)時(shí)候你如果維持這個(gè)隊(duì)列,堆空間浪費(fèi)很大,但是又要排序,這個(gè)時(shí)候,我采用的方法是,外部排序,其實(shí)就是在內(nèi)存和磁盤中取一個(gè)平衡,分批的去讀取到內(nèi)存中。
標(biāo)簽: