1.原始數(shù)據(jù):數(shù)據(jù)結(jié)構(gòu)為一個二維表list存的樹:[json1,json2...]json的格式為:{id,name,...deptPreId(樹節(jié)點(diǎn))}原始數(shù)據(jù)例子:[{"id":1,"deptName":"B","deptFullname":"A_B","deptLevel":2,"deptPreId":2,},{"id":2,"deptName":"A","deptFullname":null,"deptLevel":1,"deptPreId":null,},{"id":3,"deptName":"C","deptFullname":null,"deptLevel":3,"deptPreId":1,},{"id":4,"deptName":"wwxxX","deptFullname":null,"deptLevel":null,"deptPreId":1},{"id":5,"deptName":"123124124","deptFullname":null,"deptLevel"2,"deptPreId":1}];2.目標(biāo)數(shù)據(jù):將其轉(zhuǎn)換為下面目標(biāo)數(shù)據(jù),也是一個類似的樹,有樹形層次:其中如果指定child的list的話如何找到其父和組,并生成相應(yīng)的樹。數(shù)據(jù)格式如下:list:[json1,json2]json:{json,childList}Childlist:[json1,json2]目標(biāo)數(shù)據(jù)例子:data=[{"id":2,"deptName":"A","deptFullname":null,"deptLevel":1,"deptPreId":null,Child:[{"id":1,"deptName":"B","deptFullname":"A_B","deptLevel":2,"deptPreId":2,Child:[{"id":3,"deptName":"C","deptFullname":null,"deptLevel":3,"deptPreId":1,}]},{"id":5,"deptName":"123124124","deptFullname":null,"deptLevel"2,"deptPreId":1}]}]通過子類去尋找父類會涉及到父類合并的問題,比如樹形結(jié)構(gòu):A1->B1->C1,A1->B1->C2,A1->B1->C2->D2,比如我現(xiàn)在要通過list,[D2,C1]去尋找D2,所有的祖輩,當(dāng)回溯到B1的時候要進(jìn)行合并,但是C2和D2第幾次循環(huán)查到C2,D2是不確定的。所以和參考代碼給出的解決方法有所區(qū)分類似問題:通過父類去尋找子類:https://segmentfault.com/q/10...
在線等,挺急的!數(shù)據(jù)格式處理:在指定一個子類的情況下去尋找所有父類,將類listjson轉(zhuǎn)換為類樹的json數(shù)據(jù)
猛跑小豬
2019-10-17 09:25:59