黑松山资源网 Design By www.paidiu.com
本文实例讲述了Python单链表简单实现代码。分享给大家供大家参考,具体如下:
用Python模拟一下单链表,比较简单,初学者可以参考参考
#coding:utf-8 class Node(object): def __init__(self, data): self.data = data self.next = None class NodeList(object): def __init__(self, node): self.head = node self.head.next = None self.end = self.head def add_node(self, node): self.end.next = node self.end = self.end.next def length(self): node = self.head count = 1 while node.next is not None: count += 1 node = node.next return count # delete node and return it's value def delete_node(self, index): if index+1 > self.length(): raise IndexError('index out of bounds') i = 0 node = self.head while True: if i==index-1: break node = node.next i += 1 tmp_node = node.next node.next = node.next.next return tmp_node.data def show(self): node = self.head node_str = '' while node is not None: if node.next is not None: node_str += str(node.data) + '->' else: node_str += str(node.data) node = node.next print node_str # Modify the original position value and return the old value def change(self, index, data): if index+1 > self.length(): raise IndexError('index out of bounds') i = 0 node = self.head while True: if i == index: break node = node.next i += 1 tmp_data = node.data node.data = data return tmp_data # To find the location of index value def find(self, index): if index+1 > self.length(): raise IndexError('index out of bounds') i = 0 node = self.head while True: if i == index: break node = node.next i += 1 return node.data #test case n1 = Node(0) n2 = Node(1) n3 = Node(2) n4 = Node(3) n5 = Node(4) node_list = NodeList(n1) node_list.add_node(n2) node_list.add_node(n3) node_list.add_node(n4) node_list.add_node(n5) #node = node_list.delete_node(3) #print node #d = node_list.change(0,88) data = node_list.find(5) print data node_list.show()
更多关于Python相关内容感兴趣的读者可查看本站专题:《Python数据结构与算法教程》、《Python Socket编程技巧总结》、《Python函数使用技巧总结》、《Python字符串操作技巧汇总》、《Python入门与进阶经典教程》及《Python文件与目录操作技巧汇总》
希望本文所述对大家Python程序设计有所帮助。
黑松山资源网 Design By www.paidiu.com
广告合作:本站广告合作请联系QQ:858582 申请时备注:广告合作(否则不回)
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
黑松山资源网 Design By www.paidiu.com
暂无评论...
更新日志
2024年10月09日
2024年10月09日
- s14全球总决赛瑞士轮什么时候开始 s14瑞士轮开始时间介绍
- 晨报|《使命召唤21》全球发布预告 《异形:隔离》续作官宣开发中
- 隐形女联动毁灭博士?杰西卡·阿尔巴与小唐尼晒合影
- 《博德之门3》7号补丁发布后:Mod下载量达到2200万次!
- 徐璨宾《井底的蚯蚓》[FLAC/分轨][218.37MB]
- 王冰冰《Vaga Luna 月球漫游》[320K/MP3][62.76MB]
- 证声音乐图书馆《蔚蓝海岸·爵士度假日》[320K/MP3][59.79MB]
- 群星.1993-飞图合唱歌曲精丫飞图】【WAV+CUE】
- 王霏霏.2024-TOOOOO.BUSY(EP)【SNMUSIC】【FLAC分轨】
- 张宇.2016-好男人的情歌NEWXRCD【金牌大风】【WAV+CUE】
- 《食戟之灵》小林龙胆兔女郎比基尼版模型即将发售
- 重大里程碑!九号电动第500万台智能两轮电动车正式下线
- TGA主持人发文祝贺《暗喻幻想》 国外网友:提名稳了?
- 【原神】V5.0攻略 | 旋曜玉帛收集攻略(序号81~序号90)
- 【原神】V5.0攻略 | 旋曜玉帛收集攻略(序号91~序号100)