国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

計算樹結點路徑的一種Javascript的實現

iOS122 / 1116人閱讀

摘要:樹結構如下南京理工大學化工學院有機化學無機化學無機組無機組計算機學院硬件學院軟件學院學院學院主要算法如下運行結果感謝大家閱讀,另外,在這邊幫朋友推一個愛心眾籌,希望大家能夠奉獻點愛心,朋友母親,身患直腸癌,目前在北京武警總醫院接收治療,可留

樹結構如下:

const tree = [
  {
    id: "00",
    name: "南京理工大學",
    children: [
      {
        id: "0001",
        name: "化工學院",
        children: [
          {
            id: "000101",
            name: "有機化學",
          },
          {
            id: "000102",
            name: "無機化學",
            children: [
              {
                id: "00010201",
                name: "無機1組",
              },
              {
                id: "00010202",
                name: "無機2組",
              }
            ]
          }
        ]
      },
      {
        id: "0002",
        name: "計算機學院",
        children: [
          {
            id: "000201",
            name: "硬件學院",
          },
          {
            id: "000202",
            name: "軟件學院",
            children: [
              {
                id: "00020201",
                name: "Java學院"
              },
              {
                id: "00020202",
                name: "C#學院"
              }
            ]
          }
        ]
      }
    ]
  }
];

主要算法如下:

function makePath(tree, target) {

  var done = false, path = [];

  function traverse(tree, target) {
    
    for (let i = 0; i < tree.length; i++) {
      const node = tree[i];
      if (!done) {
        if (i > 0) {
          path.pop();
        }
        path.push(node.id);
        if (node.id === target) {
          done = true;
          return;
        } else {
          let children = node.children;
          if (children) {
            traverse(children, target);
          }
        }
      }
    }

    if (!done) {
      path.pop();
    }

    return;
  };

  traverse(tree, target);

  return path;
};
makePath(tree, "000101");

運行結果:

[ "00", "0001", "000101" ]

感謝大家閱讀,另外,在這邊幫朋友推一個愛心眾籌,希望大家能夠奉獻點愛心,朋友母親,身患直腸癌,目前在北京武警總醫院接收治療,可留言留下您的聯系方式,日后感激大家!

文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。

轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/108388.html

相關文章

  • 數據結構與算法:二叉算法

    摘要:因此,根據題目給出的先序遍歷和中序遍歷,可以畫出二叉樹選參考數據結構與算法描述實現二叉樹算法淺談數據結構二叉樹慕課網實現二叉樹算法前端樹控件騰訊軟件開發面試題 內容銜接上一章 數據結構與算法:常見排序算法 內容提要 什么是樹   - 為什么使用樹 二叉樹 二叉查找樹 紅黑樹 B、B+樹 堆 伸展樹 樹 可以點擊鏈接感受下筆者用d3.js畫的tree https://codepen...

    Little_XM 評論0 收藏0
  • 學習javascript數據結構(四)——

    摘要:原文博客地址學習數據結構四樹知乎專欄簡書專題前端進擊者知乎前端進擊者簡書博主博客地址的個人博客人之所能,不能兼備,棄其所短,取其所長。通常子樹被稱作左子樹和右子樹。敬請期待數據結構篇最后一篇文章學習數據結構五圖參考文章樹數據結構二叉樹 前言 總括: 本文講解了數據結構中的[樹]的概念,盡可能通俗易懂的解釋樹這種數據結構的概念,使用javascript實現了樹,如有紕漏,歡迎批評指正。 ...

    Dean 評論0 收藏0
  • 「中高級前端」窺探數據結構世界- ES6版

    摘要:單鏈表與雙向鏈表單鏈表是表示一系列節點的數據結構,其中每個節點指向列表中的下一個節點。且分別稱為該結點的左子樹與右子樹。由于二叉樹是非線性結構,因此,樹的遍歷實質上是將二叉樹的各個結點轉換成為一個線性序列來表示。1. 什么是數據結構? 數據結構是在計算機中組織和存儲數據的一種特殊方式,使得數據可以高效地被訪問和修改。更確切地說,數據結構是數據值的集合,表示數據之間的關系,也包括了作用在數據上...

    Lucky_Boy 評論0 收藏0

發表評論

0條評論

最新活動
閱讀需要支付1元查看
<