python链表初始化分为3步:
1.建立节点类。
2.创建头节点并输入数据初始化。
3.返回头节点以方便调用。//链表调用时通过头节点完成的
class ListNode:
def __init__(self, x):
self.val = x
self.next = None
class LinkList:
def __init__(self):
self.head=None
def initList(self, data):
# 创建头结点
self.head = ListNode(data[0])
r=self.head
p = self.head
# 逐个为 data 内的数据创建结点, 建立链表
for i in data[1:]:
node = ListNode(i)
p.next = node
p = p.next
return r
输出链表的代码也是传入头节点
def printlist(self,head):
if head == None: return
node = head
while node != None:
print(node.val)
node = node.next
注意,只有node.val才有值,而node是一个结构。