日韩久久久精品,亚洲精品久久久久久久久久久,亚洲欧美一区二区三区国产精品 ,一区二区福利

Python - 節(jié)點(diǎn)

系統(tǒng) 1720 0

在有些情況下,存儲(chǔ)數(shù)據(jù)的內(nèi)存分配不能位于連續(xù)的內(nèi)存塊中。所以我們接受指針的幫助,其中數(shù)據(jù)和數(shù)據(jù)元素的下一個(gè)位置的地址也被存儲(chǔ)。所以我們從當(dāng)前數(shù)據(jù)元素的值中知道下一個(gè)數(shù)據(jù)元素的地址。通常這樣的結(jié)構(gòu)被稱為指針。但在Python中,我們將它們稱為節(jié)點(diǎn)。

節(jié)點(diǎn)是各種其他數(shù)據(jù)結(jié)構(gòu)鏈接列表和發(fā)can可以在python中處理的基礎(chǔ)。

創(chuàng)建節(jié)點(diǎn)

這些節(jié)點(diǎn)是通過(guò)實(shí)現(xiàn)一個(gè)將保存指針和數(shù)據(jù)元素的類來(lái)創(chuàng)建的。在下面的例子中,我們創(chuàng)建了一個(gè)名為daynames的類來(lái)保存星期幾的名稱。nextval指針被初始化為空和三個(gè)節(jié)點(diǎn),并用值初始化,如圖所示。

節(jié)點(diǎn)e1的下一個(gè)指針指向e3,而節(jié)點(diǎn)e3的下一個(gè)指針指向e2。

            
              class daynames:
    def __init__(self, dataval=None):
        self.dataval = dataval
        self.nextval = None

e1 = daynames('Mon')
e2 = daynames('Tue')
e3 = daynames('Wed')

e1.nextval = e3
e3.nextval = e2
            
          

遍歷節(jié)點(diǎn)元素

我們可以通過(guò)創(chuàng)建一個(gè)變量并為其分配第一個(gè)元素來(lái)遍歷上面創(chuàng)建的節(jié)點(diǎn)的元素。然后我們使用while循環(huán)和nextval指針來(lái)打印出所有的節(jié)點(diǎn)元素。請(qǐng)注意,我們還有一個(gè)額外的數(shù)據(jù)元素,并將nextval指針正確排列,以便按照正確的順序?qū)⑤敵龀尸F(xiàn)為一周的幾天。

            
              class daynames:
    def __init__(self, dataval=None):
        self.dataval = dataval
        self.nextval = None

e1 = daynames('Mon')
e2 = daynames('Wed')
e3 = daynames('Tue')
e4 = daynames('Thu')

e1.nextval = e3
e3.nextval = e2
e2.nextval = e4

thisvalue = e1

while thisvalue:
        print(thisvalue.dataval)
        thisvalue = thisvalue.nextval
            
          

當(dāng)上面的代碼執(zhí)行時(shí),它會(huì)產(chǎn)生以下結(jié)果。

            
              Mon
Tue
Wed
Thu
            
          

插入和刪除等附加操作可以通過(guò)在鏈接列表和樹(shù)等通用數(shù)據(jù)結(jié)構(gòu)中使用此節(jié)點(diǎn)容器來(lái)實(shí)現(xiàn)適當(dāng)?shù)姆椒▉?lái)完成。所以我們?cè)诮酉聛?lái)的章節(jié)中對(duì)它們進(jìn)行研究。

?

轉(zhuǎn)自http://codingdict.com/article/4837


更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號(hào)聯(lián)系: 360901061

您的支持是博主寫(xiě)作最大的動(dòng)力,如果您喜歡我的文章,感覺(jué)我的文章對(duì)您有幫助,請(qǐng)用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點(diǎn)擊下面給點(diǎn)支持吧,站長(zhǎng)非常感激您!手機(jī)微信長(zhǎng)按不能支付解決辦法:請(qǐng)將微信支付二維碼保存到相冊(cè),切換到微信,然后點(diǎn)擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對(duì)您有幫助就好】

您的支持是博主寫(xiě)作最大的動(dòng)力,如果您喜歡我的文章,感覺(jué)我的文章對(duì)您有幫助,請(qǐng)用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長(zhǎng)會(huì)非常 感謝您的哦!!!

發(fā)表我的評(píng)論
最新評(píng)論 總共0條評(píng)論
主站蜘蛛池模板: 达拉特旗| 视频| 买车| 镇巴县| 宁阳县| 名山县| 建水县| 信阳市| 上杭县| 永年县| 哈巴河县| 澄迈县| 哈尔滨市| 尚志市| 钟山县| 兴隆县| 沙坪坝区| 黄山市| 始兴县| 长阳| 肇东市| 三台县| 陵川县| 固始县| 新昌县| 谷城县| 尉犁县| 阿勒泰市| 同仁县| 古浪县| 合水县| 罗平县| 靖边县| 楚雄市| 宁国市| 富宁县| 嘉善县| 张家界市| 永和县| 越西县| 文安县|