微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

单链表推送功能

如何解决单链表推送功能

以下内容来自 Zed Shaws 的“Learn More Python The Hard Way”。 我在底部方法调用旁边评论了push to the list的输出

import { isPersian,toPersianChars } from "persian-tools2";

URLfix(
    "https://fa.wikipedia.org/wiki/%D9%85%D8%AF%DB%8C%D8%A7%D9%88%DB%8C%DA%A9%DB%8C:Gadget-Extra-Editbuttons-botworks.js",); // "https://fa.wikipedia.org/wiki/مدیاویکی:Gadget-Extra-Editbuttons-botworks.js"
URLfix("https://en.wikipedia.org/wiki/Persian_alphabet"); // "https://en.wikipedia.org/wiki/Persian_alphabet",URLfix("Sample Text"); // "Sample Text"

到目前为止,我确信 class sllNode(object): def __init__(self,data=None,next_node=None): self.data = data self.next_node = next_node def __repr__(self): nval = self.data and self.next_node or None return f"[{self.data}:{repr(nval)}]" class LinkedList(object): def __init__(self,head=None): self.begin = None self.end = None def push(self,data): Node = sllNode(data,None) if self.begin == None: self.end = Node # self.begin = self.end # for life of the program? else: self.end.next_node = Node self.end = Node # why wont self.begin change to just Node like self.end does here...? aren't they linked? test = LinkedList() test.push(1) #self.begin = 1:None,self.end = 1:None test.push(2) #self.begin = 1:2:None,self.end = 2:None test.push(3) #self.begin = 1:2:3:None,self.end = 3:None test.push(4) #self.begin = 1:2:3:4:None,self.end = 4:None print(test.begin,test.end) 对整个程序来说都是如此,所以无论 self.begin = self.end 值是什么,self.end 值都是如此。但是,如果 self.begin 用于程序生命,那么为什么 else 块中的 self.begin = self.end 不也设置 self.end = node

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。