会员可以在此提问,百战程序员老师有问必答
对大家有帮助的问答会被标记为“推荐”
看完课程过来浏览一下别人提的问题,会帮你学得更全面
截止目前,同学们一共提了 132435个问题
Python 全系列/第三阶段:Python 网络与并发编程/并发编程 18602楼
JAVA 全系列/第一阶段:JAVA 快速入门/数组和数据存储 18603楼

class Node():
    def __init__(self, value=None, next=None):
        self.value = value
        self.next = next

class LinkList():
    def __init__(self):
        self.root = Node()  # 代表头
        self.size = 0  # 代表有几个数据
        self.next = None  # 通过设置next的值为0,来记录最后一个节点是谁,方便新加数据时,安排在那个元素后面
    
    def append(self, value):
        node = Node(value)  # 实例化
        # 判断是否已经有数据
        if not self.next: # 如果没有节点时
            self.root.next = node  # 将新节点挂到root后面
            self.next = node  # 因为self.next的值是None、node的next值是None,所以相当于node代替了self.next
        else:
            self.next.next = node  # 在最后一个节点的next指向node
            self.next = node  # 因为self.next的值是None、node的next值是None,所以相当于node代替了self.next
        self.size += 1
    def append_first(self,value):
        node = Node(value)  # 实例化
        if not self.next:  # 如果没有节点时
            self.root.next = node  # 直接在root后面加节点,相当于在头部加数据
            self.next = node  # 仅有node这一个数据,所以node也是最后一个节点
        else:
            temp = self.root.next  # 获取原来root后面的那个节点
            self.root.next = node  # 将新的节点挂到root上
            node.next = temp  # 新的节点的下一个节点是原来root后面的节点
        self.size += 1
    def __iter__(self):
        """遍历 """
        current = self.root.next
        while current is not self.next:
            yield current.value
            current = current.next
        yield current.value
if __name__ == '__main__':
    link = LinkList()
    link.append('孙悟空')
    link.append('猪八戒')
    link.append_first('唐僧')

    for i in link:
        print(i)

image.png

老师,请问红线处标注的理解是否正确?尤其是红色箭头处

Python 全系列/第十六阶段:数据结构与算法/算法与数据结构(旧) 18604楼
JAVA 全系列/第八阶段:Linux入门到实战/Linux(旧) 18606楼
JAVA 全系列/第九阶段:Spring Boot实战/Spring Boot 18608楼
JAVA 全系列/第六阶段:项目管理与SSM框架/Maven 18612楼
Python 全系列/第五阶段:Linux 环境编程基础/ShellScript脚本编程 18613楼
JAVA 全系列/第二阶段:JAVA 基础深化和提高/容器(旧) 18614楼
JAVA 全系列/第一阶段:JAVA 快速入门/变量、数据类型、运算符 18615楼

课程分类

百战程序员微信公众号

百战程序员微信小程序

©2014-2025百战汇智(北京)科技有限公司 All Rights Reserved 北京亦庄经济开发区科创十四街 赛蒂国际工业园
网站维护:百战汇智(北京)科技有限公司
京公网安备 11011402011233号    京ICP备18060230号-3    营业执照    经营许可证:京B2-20212637