python
# !/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 = value
self.next = next
def __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 = node1
node1.next = node2
node2.next = node3
# head 指针指向头节点
head = node
# 存储遍历结果
res = ""
while head:
res += str(head)
head = head.next
print(res)
简化写法:
python
# !/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 = value
self.next = next
def __str__(self):
return f"{self.value}->" if self.next else str(self.value)
class SingleListNode:
"""
单链表
"""
def __init__(self,lis):
self.lis = lis
self.head = ListNode(lis[0])
self.createListNode()
def createListNode(self):
"""
创建
"""
curr = self.head
for i in range(1, len(self.lis)):
new_node = ListNode(self.lis[i])
curr.next = new_node
curr = new_node
def traverseListNode(self):
"""
遍历
"""
res = ""
while self.head:
res += f"{self.head}"
self.head = self.head.next
return res
if __name__ == '__main__':
lis = [1,2,3,4,5]
sln = SingleListNode(lis)
print(sln.traverseListNode())