//题目3,组织树状结构,有没有更好的解决办法?
[
{ id: 4, nextId: 2 },
{ id: 3, nextId: 4 },
{ id: 2, nextId: 5 },
]
function getTree(arr){
let map = new Map();
let res = [];
for (let i = 0; i < arr.length; i++) {
map.set(arr[i]['nextId'],arr[i]);
}
for (let i = 0; i < arr.length; i++) {
if(!map.has(arr[i]['id'])){
res.push(arr[i]);
}else{
let _obj = map.get(arr[i]['id']);
_obj['nextId'] = arr[i];
}
}
return res;
}
getTree([
{ id: 4, nextId: 2 },
{ id: 3, nextId: 4 },
{ id: 2, nextId: 5 },
])
总结一下,上来没有自我介绍直接开始,还真是毫无准备,
说是问基础问的也太细节了吧,第一部分直接给我问懵了,估计凉凉,面试体验也很差。push方法返回什么你们知道吗?splice方法又返回什么?