日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁技術文章
文章詳情頁

python怎么獲得二叉樹根到所有葉子的路徑?

瀏覽:226日期:2022-07-19 09:52:28

問題描述

’’’這是二叉樹的定義’’’class TreeNode: def __init__(self, val):self.val = valself.left, self.right = None, None’’’這是路徑函數(shù)’’’def dfs(node, result, tmp): if node == None:return tmp.append(node) if node.left == None and node.right == None:result.append([i.val for i in tmp])return dfs(node.left, result, tmp) dfs(node.right, result, tmp)

這是我的代碼,但是每次都是打印全部節(jié)點。然后DEBUG發(fā)現(xiàn),每次遞歸到右子樹,tmp數(shù)組會保留之前遍歷完左子樹的狀態(tài),而根本不是我想的從根到右子樹的狀態(tài)。這是作用域的問題?可我找不到怎么解決,在此請求解答,謝謝

問題解答

回答1:

是作用域的問題,你的算法大概沒有多少問題,主要是你要知道,給函數(shù)傳參的時候,尤其是傳入可變參數(shù)(你這里是列表)的時候,你要做到心中有數(shù)。這里你的問題主要集中在tmp上面,之所以會保留左子樹的狀態(tài),是因為你在遍歷左子樹的時候,添加了左子樹到tmp中了,然后你又在下一次遞歸調(diào)用中把添加后的列表放到了列表中,如果只有左子樹,是沒問題的,如果有右子樹,就會出現(xiàn)問題。語言表達能力有限,我把改過的代碼貼出來給你看看

import copyclass TreeNode: def __init__(self, val):self.val = valself.left, self.right = None, Nonedef dfs(node, result, tmp=list()): if node is None:return tmp.append(node) # 這里需要用拷貝而不是用 = 賦值,也可以遍歷賦值 tmp1 = copy.deepcopy(tmp) if node.left is None and node.right is None:result.append([i.val for i in tmp])return if node.left is not None:dfs(node.left, result, tmp) # 遍歷右子樹需要帶上不同的變量,否則左子樹的tmp和右子樹的tmp都指向一塊內(nèi)存 if node.right is not None:dfs(node.right, result, tmp1)if __name__ == ’__main__’: node1 = TreeNode(’a’) node2 = TreeNode(’b’) node3 = TreeNode(’c’) node4 = TreeNode(’d’) node5 = TreeNode(’e’) node6 = TreeNode(’f’) node7 = TreeNode(’g’) node1.left = node2 node1.right = node3 node2.left = node4 node2.right = node5 node4.left = node6 node3.left = node7 r = [] dfs(node1, result=r) print(r)

標簽: Python 編程
相關文章:
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
欧美精品二区| 亚洲精品女人| 青青国产精品| 国产农村妇女精品一二区| 成人看片网站| se01亚洲视频| 99久久激情| 悠悠资源网久久精品| 欧美午夜不卡| 久久国产精品毛片| 日韩中文字幕av电影| 视频一区二区三区中文字幕| 日本欧美在线看| 婷婷视频一区二区三区| 日本久久二区| 国产精品亚洲欧美| 国产精品久久久久久模特| 日本aⅴ免费视频一区二区三区| 亚洲精品乱码| 国产亚洲一区| 麻豆一区在线| 中文字幕在线免费观看视频| 久久国产欧美| 99国产一区| 日本一区二区三区视频在线看| 欧美亚洲tv| 色综合五月天| 亚洲一级特黄| 免费日本视频一区| 欧美日韩一区二区三区不卡视频| 国产精品www.| 黑人精品一区| 亚洲少妇一区| 日本少妇一区二区| 精品高清久久| 日本午夜大片a在线观看| 婷婷精品视频| 亚洲三级国产| 精品免费av一区二区三区| 久久亚洲国产| 日韩高清一级| 中国字幕a在线看韩国电影| 夜久久久久久| 国产精品久久久久av蜜臀 | 日韩电影在线视频| 日韩一级网站| 国产欧美自拍| 韩国久久久久久| 久久成人精品| 老色鬼精品视频在线观看播放| 99tv成人| 亚洲另类av| 成人在线黄色| 免费欧美日韩| 欧美黄色一区| 国产二区精品| 久久国内精品视频| 久久国产直播| 久久国内精品自在自线400部| 正在播放日韩精品| 日韩一区二区三区免费视频| 91免费精品| 男女性色大片免费观看一区二区 | 韩日一区二区三区| 日韩高清不卡一区| 久久久国产亚洲精品| 亚洲男人在线| 香蕉成人av| 日韩精品欧美精品| 欧美日韩视频网站| 一区二区精彩视频| 国产精品蜜芽在线观看| 免费日韩一区二区| 成人一二三区| 日韩精品一级| 亚洲成人精品| 欧美精品aa| 亚洲一区亚洲| 欧美xxxx中国| 青青国产91久久久久久| 久久精品青草| 国产精品日韩精品在线播放 | 亚洲麻豆一区| 久久国产精品成人免费观看的软件| 欧美日韩午夜电影网| 国产综合色产| 久久uomeier| 国产日韩三级| 免费的成人av| 极品裸体白嫩激情啪啪国产精品| 国产精品qvod| 少妇精品久久久一区二区| 久久人人99| 国产成人精品一区二区三区视频 | 青青草视频一区| 欧美日韩四区| 伊伊综合在线| 欧美国产不卡| 日韩av中文字幕一区| 红桃视频欧美| 久久精品官网| 91一区二区三区四区| 欧美一区免费| 日韩精品一二三| 一区在线免费| 日韩不卡视频在线观看| 麻豆91小视频| 国产精品一区二区三区av麻| 亚洲久久一区| 蜜桃视频在线观看一区| 日韩午夜av在线| 99久久精品网| 欧美日韩视频网站| 国产一区二区三区久久| 国产精品xvideos88| 911精品国产| 日韩欧美高清一区二区三区| 天堂va蜜桃一区二区三区| 亚洲精品91| 欧美日韩一区二区综合| 日本黄色精品| 精品精品久久| 久久久精品区| 麻豆高清免费国产一区| 老司机精品视频在线播放| 国产精成人品2018| 国产精品观看| 国产高清视频一区二区| 国产精品亚洲产品| 欧美国产极品| 久久久久久网| 日韩精品影视| 欧美一区二区三区高清视频| 色爱av综合网| 黄色亚洲在线| 蜜桃久久久久久久| 亚洲天堂日韩在线| 日本欧美一区二区| 奇米777国产一区国产二区| 18国产精品| 精品一区二区三区亚洲| 成人污污视频| 特黄特色欧美大片| 午夜精品免费| 在线日韩成人| 久久激情av| 精品美女在线视频| 欧洲av一区二区| 日韩午夜精品| 日韩精品视频在线看| 国产欧美日韩一区二区三区在线| 国产精品男女| 国产成人1区| 欧美特黄一级大片| 亚洲一区二区三区四区电影| 国产欧美日韩一级| 成人国产精品一区二区免费麻豆| 91看片一区| 欧美一区=区| 国产精选久久| 欧洲亚洲一区二区三区| 亚洲少妇在线| 国产精品亚洲欧美一级在线| 日韩精品1区| 国产精品日韩欧美一区| 日韩视频一二区| 精品午夜av| 2023国产精品久久久精品双| 亚洲人成亚洲精品| 久久影视三级福利片| 视频福利一区| 亚洲aa在线| 成人午夜在线| 国产精品普通话对白| 国产精品天天看天天狠| 久久亚洲在线| 日韩精品第二页| 黑人精品一区| 日本一区福利在线| 日韩在线观看不卡| 亚洲丝袜美腿一区| 精品一区二区三区的国产在线观看 | 91福利精品在线观看| 高清久久精品| 综合欧美亚洲| 极品av在线| 婷婷精品在线观看| 亚洲日本网址| 国产午夜一区| 亚洲精品电影| 国产精品久久久网站| 免费视频国产一区| 国产精品一二| 99在线精品视频在线观看| 久久不卡日韩美女| 一本一道久久a久久精品蜜桃| 国产精品一线天粉嫩av| 狠狠久久婷婷| 成人国产精品一区二区网站| 视频一区二区中文字幕|