实现 convert 方法,把原始 list 转换成树形结构,要求尽可能降低时间复杂度

参考地址

function convert(list) {
    const res = []
    const map = list.reduce((res, v) => (res[v.id] = v, res), {})
    for (const item of list) {
        if (item.parentId === 0) {
            res.push(item)
            continue
        }
        if (item.parentId in map) {
            const parent = map[item.parentId]
            parent.children = parent.children || []
            parent.children.push(item)
        }
    }
    return res
}

你可能感兴趣的:(实现 convert 方法,把原始 list 转换成树形结构,要求尽可能降低时间复杂度)