扁平数据结构转换tree

需求,将

扁平数据结构转换tree

 

 转换为

扁平数据结构转换tree

 

 的形式

 

getPidToThree(items) {
      const result = [];   // 存放结果集
      const itemMap = {};  // 
        
      // 先转成map存储
      for (const item of items) {
        itemMap[item.id] = {...item, children: []}
      }
      
      for (const item of items) {
        const id = item.id;
        const pid = item.pid;
        const treeItem =  itemMap[id];
        if (pid === 0) {
          result.push(treeItem);
        } else {
          if (!itemMap[pid]) {
            itemMap[pid] = {
              children: [],
            }
          }
          itemMap[pid].children.push(treeItem)
        }

      }
      return result;
    }

 

上一篇:win opencv451 opencv_contral451 camke 编译 _ippitv ffmpeg 报错解决


下一篇:【Ubuntu 安装 opencv 】