【基础】链表的储存结构说明(python)

时间:2023-03-08 22:44:42

【实现链表的添加】

class ListNode():
def __init__(self,data=None,nxt=None):
self.data=data
self.nxt=nxt class myListNode():
def __init__(self):
#初始化一个链表
self.head = ListNode(0)
def construct_node(self):
'''
构造一个简单链表 [head(0) -> node1(1) -> node2(2) -> None]
'''
#获取头结点
head = self.head # step1
# 创建一个新节点node1
node1 = ListNode(1)
#然后让头结点head指向这个节点node1
head.nxt = node1 # step2
# 创建一个新节点node2
node2 = ListNode(2)
#然后让节点node1指向这个节点node2
node1.nxt = node2
# 结束:
# 所有数据都存在node当中
# head[ node1 , [node2,None] ]
# 相当于一个嵌套的数据结构,所以可以用递归或者循环来遍历它 def printNode(self):
node = self.head
while node:
print(node.data)
node=node.nxt
my = myListNode()
my.construct_node()
my.printNode()

【Q&A】

1.构造链表的时候数据存储在哪里,以什么形式来存储的?

数据存储在对象node中:node作为成员变量来接收数据,每次调用addit来像node中添加数据。

以嵌套的形式存储:node[ data1, [ data2, None ]  ]

相关文章