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链表的资料请关注毛票票其它相关文章!
热门推荐
10 八一幼儿祝福语大全简短
11 公司乔迁食堂祝福语简短
12 婚礼结束聚餐祝福语简短
13 儿媳买车妈妈祝福语简短
14 毕业送礼老师祝福语简短
15 同事辞职正常祝福语简短
16 恭贺新婚文案祝福语简短
17 金店立秋祝福语简短英文
18 婆婆高寿祝福语大全简短