# !/usr/bin/python3
# -*- coding:utf-8 -*-
"""
@author: JHC000abc@gmail.com
@file: 111.py
@time: 2024/05/30 21:37:09
@desc:"""
# 定义单链表结构
class ListNode:def __init__(self,value=0,next=None):self.value = valueself.next = nextdef __str__(self):return f"{self.value}->" if self.next else str(self.value)if __name__ == '__main__':# 构建链表node = ListNode(0)node1 = ListNode(1)node2 = ListNode(2)node3 = ListNode(3)node.next = node1node1.next = node2node2.next = node3# head 指针指向头节点head = node# 存储遍历结果res = ""while head:res += str(head)head = head.nextprint(res)
简化写法:
# !/usr/bin/python3
# -*- coding:utf-8 -*-
"""
@author: JHC000abc@gmail.com
@file: 111.py
@time: 2024/05/30 21:37:09
@desc:"""
# 定义单链表结构
class ListNode:""""""def __init__(self,value=0,next=None):self.value = valueself.next = nextdef __str__(self):return f"{self.value}->" if self.next else str(self.value)class SingleListNode:"""单链表"""def __init__(self,lis):self.lis = lisself.head = ListNode(lis[0])self.createListNode()def createListNode(self):"""创建"""curr = self.headfor i in range(1, len(self.lis)):new_node = ListNode(self.lis[i])curr.next = new_nodecurr = new_nodedef traverseListNode(self):"""遍历"""res = ""while self.head:res += f"{self.head}"self.head = self.head.nextreturn resif __name__ == '__main__':lis = [1,2,3,4,5]sln = SingleListNode(lis)print(sln.traverseListNode())