Python - 节点

系统 413 0

在有些情况下,存储数据的内存分配不能位于连续的内存块中。所以我们接受指针的帮助,其中数据和数据元素的下一个位置的地址也被存储。所以我们从当前数据元素的值中知道下一个数据元素的地址。通常这样的结构被称为指针。但在Python中,我们将它们称为节点。

节点是各种其他数据结构链接列表和发can可以在python中处理的基础。

创建节点

这些节点是通过实现一个将保存指针和数据元素的类来创建的。在下面的例子中,我们创建了一个名为daynames的类来保存星期几的名称。nextval指针被初始化为空和三个节点,并用值初始化,如图所示。

节点e1的下一个指针指向e3,而节点e3的下一个指针指向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
            
          

遍历节点元素

我们可以通过创建一个变量并为其分配第一个元素来遍历上面创建的节点的元素。然后我们使用while循环和nextval指针来打印出所有的节点元素。请注意,我们还有一个额外的数据元素,并将nextval指针正确排列,以便按照正确的顺序将输出呈现为一周的几天。

            
              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
            
          

当上面的代码执行时,它会产生以下结果。

            
              Mon
Tue
Wed
Thu
            
          

插入和删除等附加操作可以通过在链接列表和树等通用数据结构中使用此节点容器来实现适当的方法来完成。所以我们在接下来的章节中对它们进行研究。

 

转自http://codingdict.com/article/4837


更多文章、技术交流、商务合作、联系博主

微信扫码或搜索:z360901061

微信扫一扫加我为好友

QQ号联系: 360901061

您的支持是博主写作最大的动力,如果您喜欢我的文章,感觉我的文章对您有帮助,请用微信扫描下面二维码支持博主2元、5元、10元、20元等您想捐的金额吧,狠狠点击下面给点支持吧,站长非常感激您!手机微信长按不能支付解决办法:请将微信支付二维码保存到相册,切换到微信,然后点击微信右上角扫一扫功能,选择支付二维码完成支付。

【本文对您有帮助就好】

您的支持是博主写作最大的动力,如果您喜欢我的文章,感觉我的文章对您有帮助,请用微信扫描上面二维码支持博主2元、5元、10元、自定义金额等您想捐的金额吧,站长会非常 感谢您的哦!!!

发表我的评论
最新评论 总共0条评论