python操作链表的示例代码
classNode:
def__init__(self,dataval=None):
self.dataval=dataval
self.nextval=None
classSLinkList:
def__init__(self):
self.headval=None
#遍历列表
deftraversal_slist(self):
head_node=self.headval
whilehead_nodeisnotNone:
print(head_node.dataval)
head_node=head_node.nextval
#表头插入结点
defhead_insert(self,newdata):
Newdata=Node(newdata)
Newdata.nextval=self.headval
self.headval=Newdata
#表尾插入结点
deftail_insert(self,newdata):
Newdata=Node(newdata)
ifself.headvalisNone:
self.headval=Newdata
return
head_node=self.headval
whilehead_node.nextval:
head_node=head_node.nextval
head_node.nextval=Newdata
#在两个数据结点之间插入
defmiddle_insert(self,middle_node,newdata):
Newdata=Node(newdata)
ifmiddle_nodeisNone:
return
Newdata.nextval=middle_node.nextval
middle_node.nextval=Newdata
#删除结点
defremove_node(self,newdata):
head_node=self.headval
ifhead_node==None:
return
ifhead_node.dataval==newdata:
self.headval=head_node.nextval
head_node=None
return
whilehead_nodeisnotNone:
prev=head_node
head_node=head_node.nextval
ifhead_node:
ifhead_node.dataval==newdata:
prev.nextval=head_node.nextval
lis=SLinkList()
lis.headval=Node('aa')
ee=Node('bb')
lis.headval.nextval=ee
lis.head_insert('cc')
lis.tail_insert('dd')
lis.middle_insert(ee,"Fri")
lis.remove_node('bb')
lis.traversal_slist()
以上就是python操作链表的示例代码的详细内容,更多关于Python链表的资料请关注毛票票其它相关文章!
热门推荐
6 保研的祝福语简短
10 年轻20岁祝福语简短
11 朋友结婚祝福语信息简短
12 女孩婚礼贺卡祝福语简短
13 30段点歌简短祝福语
14 虎年春节祝福语图文简短
15 写给后妈祝福语大全简短
16 简短回复生日祝福语
17 校长送毕业祝福语简短
18 毕业立体贺卡祝福语简短