精華區beta Marginalman 關於我們 聯絡資訊
今天的LeetCode太簡單了 如果遇到這種題目我應該會在挑一提graph的來練習 133. Clone Graph 給你一個圖 你深拷貝一份並回傳 https://assets.leetcode.com/uploads/2019/11/04/133_clone_graph_question.png
要符合: 1.每一個節點都是新的物件 2.圖的結構要相同 Intuition 用遞迴深拷貝 Approach 要先生出新的Node並且加入Map才能跑遞迴 否則會抓不到你生的Node 結果這一題跟圖沒有太大的關係 TS Code: function cloneGraphWithMap (node: Node | null, map: Map<number, Node>): Node | null { if (node === null) return null if (map.has(node.val)) return map.get(node.val) const newNode = new Node(node.val, []) map.set(node.val, newNode) newNode.neighbors = node.neighbors.map((n) => cloneGraphWithMap(n, map)) return newNode } function cloneGraph (node: Node | null): Node | null { return cloneGraphWithMap(node, new Map<number, Node>()) } -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 114.32.229.33 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/Marginalman/M.1701398827.A.2AC.html
yam276: 我最近都在玩樹樹 12/01 10:48
ZooseWu: 樹對我來說相對好理解 不過樹的題目我也沒寫多少就是了 12/01 10:49
NTHUlagka: 大師又在比賽嗎? 12/01 13:29
NTHUlagka: 有 12/01 13:29
ZooseWu: 沒有 單純做好玩的 12/01 18:28