class Node:
def __init__(self,pre,data,n
self.pre=pre
self.data=data
self.next=next
class LinkedList:
def __init__(self):
self.firstNode=Node(None
# 获取节点位置
def getNode(self,index):
next=self.firstNode
c=0
while c!=index+1:
c=c+1
next=next.next
return next
# 获取数据
def get(self, index):
return self.getNode(
# 增加
def add(self,data):
lastNode = self.getN
node=Node(lastNode,d
lastNode.next=node
# node.pre=lastNode
# 删除
def delete(self, index):
node = self.getNode(
node.next = node.nex
node.next.next.pre=n
# deleteNode = node.
#
# 释放空间
# del deleteNode
# 插入
def insert(self, index, data
node = self.getNode(
newNode = Node(node,
node.next = newNode
# 长度
def len(self):
next = self.firstNod
c = 0
while next.next != N
c = c + 1
next = next.next
return c
# 编写测试案例
lis = LinkedList()
lis.add(1)
lis.add(2)
lis.add(3)
lis.add(4)
lis.insert(0, 9)
lis.delete(2)
print(lis.len())
for i in range(0, lis.len()):
print(lis.get(i), end=" ")
python语言之双向链表(插入,删除,增加)
最新推荐文章于 2023-07-28 22:19:22 发布