真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

在python二叉樹中如何為每個節(jié)點(diǎn)關(guān)聯(lián)其右相鄰節(jié)點(diǎn)-創(chuàng)新互聯(lián)

在python二叉樹中如何為每個節(jié)點(diǎn)關(guān)聯(lián)其右相鄰節(jié)點(diǎn),相信很多沒有經(jīng)驗(yàn)的人對此束手無策,為此本文總結(jié)了問題出現(xiàn)的原因和解決方法,通過這篇文章希望你能解決這個問題。

專注于為中小企業(yè)提供成都網(wǎng)站設(shè)計(jì)、成都網(wǎng)站建設(shè)服務(wù),電腦端+手機(jī)端+微信端的三站合一,更高效的管理,為中小企業(yè)青陽免費(fèi)做網(wǎng)站提供優(yōu)質(zhì)的服務(wù)。我們立足成都,凝聚了一批互聯(lián)網(wǎng)行業(yè)人才,有力地推動了成百上千企業(yè)的穩(wěn)健成長,幫助中小企業(yè)通過網(wǎng)站建設(shè)實(shí)現(xiàn)規(guī)模擴(kuò)充和轉(zhuǎn)變。

如果用C描述的話,就是一個二叉樹節(jié)點(diǎn)定義包括右節(jié)點(diǎn)指針,左節(jié)點(diǎn)指針,和右相連指針;給出一個二叉樹,維護(hù)其右相鄰指針,如果是最右邊節(jié)點(diǎn),則指針為空。

struct Node {
  int val;
  Node *left;
  Node *right;
  Node *next;
}在python二叉樹中如何為每個節(jié)點(diǎn)關(guān)聯(lián)其右相鄰節(jié)點(diǎn)

思路其實(shí)很簡單,這個可以按層分析二叉樹,首先把當(dāng)前層節(jié)點(diǎn)按照從左到右放入一個隊(duì)列中,遍歷這個隊(duì)列;如果不是隊(duì)列最后一個節(jié)點(diǎn),則按照當(dāng)前節(jié)點(diǎn)的next就是下一個節(jié)點(diǎn);同時(shí)把每一個節(jié)點(diǎn)的子節(jié)點(diǎn)按照從左到右放入下一層隊(duì)列;然后 遍歷下一層隊(duì)列;直到這個隊(duì)列為空,遍歷完成。

代碼如下:

"""
# Definition for a Node.
class Node:
    def __init__(self, val: int = 0, left: 'Node' = None, right: 'Node' = None, next: 'Node' = None):
        self.val = val
        self.left = left
        self.right = right
        self.next = next
"""
class Solution:
    def connect(self, root: 'Node') -> 'Node':
        if root == None:
            return None
        else:
            nodeList = []
            nodeList.append(root)
            while nodeList != []:
                nextList = []
                for i in range(len(nodeList)):
                    if nodeList[i].left != None:
                        nextList.append(nodeList[i].left)
                    if nodeList[i].right != None:
                        nextList.append(nodeList[i].right)
                    if i!= len(nodeList)-1:
                        nodeList[i].next = nodeList[i+1]
                nodeList = nextList
            return root

看完上述內(nèi)容,你們掌握在python二叉樹中如何為每個節(jié)點(diǎn)關(guān)聯(lián)其右相鄰節(jié)點(diǎn)的方法了嗎?如果還想學(xué)到更多技能或想了解更多相關(guān)內(nèi)容,歡迎關(guān)注創(chuàng)新互聯(lián)-成都網(wǎng)站建設(shè)公司行業(yè)資訊頻道,感謝各位的閱讀!


網(wǎng)站題目:在python二叉樹中如何為每個節(jié)點(diǎn)關(guān)聯(lián)其右相鄰節(jié)點(diǎn)-創(chuàng)新互聯(lián)
URL分享:http://weahome.cn/article/dihdjh.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部