首页 > 编程语言 > 详细

python链接

时间:2020-04-10 12:33:17      阅读:56      评论:0      收藏:0      [点我收藏+]
class node:
def __init__(self,data=None):
self.data = data
self.next = None

class link:
def __init__(self):
self.head = None

def append(self,node):
if self.head is None:
self.head = node
return
lastnode = self.head
while(lastnode.next!=None):
lastnode = lastnode.next
lastnode.next = node
return

def insert(self,node,index):
if len(self)<=index:
raise RuntimeError("长度异常")
leftnode = None
headnode = self.head
for i in range(index):
leftnode = headnode.next
rightnode = leftnode.next
leftnode.next = node
node.next = rightnode
return

def addfirst(self,node):
head = self.head
self.head = node
node.next = head
return

def del_node(self,data):
node = self.head
#删除head节点
if node.data == data:
self.head = node.next
return
#删除尾部节点
for i in range(len(self)):
if node.next.data == data and node.next.next==None:
node.next = None
return
#删除中间节点
for i in range(len(self)):
if node.next.data == data:
node.next = node.next.next
return
node = node.next
return


def __len__(self):
if self.head==None:
return 0
else:
lenth = 1
node = self.head
while(node.next!=None):
lenth+=1
node = node.next
return lenth

def print(self):
node = self.head
for i in range(len(self)):
print(node.data)
node = node.next
return

python链接

原文:https://www.cnblogs.com/taomin/p/12672435.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!