python数据结构系列之单链表(一)
来源:互联网 发布:js prototype proto 编辑:程序博客网 时间:2024/05/16 08:54
近来发现网上可供参考的python相关的数据结构方面的资料很少,便想起来写这一系列博文,本系列文章将从最简单的单链表开始,循序渐进一直到树、图等复杂的数据结构,争取每天一更,希望大家多多支持、指正。
链表结点:每个节点是一个二元组,一个表示数据域(用data表示),一个表示指针域(用next表示),数据域用来存储该节点的数据部分,指针域用来存储下一个结点的引用
结构如图:
单链表:由一个一个的结点组成,每个结点都是一个对象,有自己的标识,结点与结点之间通过指针域链接,从而建立起单向的顺序联系
具体代码如下:
class LNode(object):
def __init__(self,data,next_=None):
self.data = data
self.next = next_ //为了与python标准函数next区分
上边只是构造一个链表结点对象,为了能生成链表我们需要将一个一个的结点链接起来,而且为了能够对链表进行遍历,我们还需要为链表加上一个头指针,以下是一个简单的构建链表以及遍历链表的完整代码:
class LNode(object):
def __init__(self,data,next_=None):
self.data = data
self.next = next_
list1 = LNode(1)
p = list1
for i in range(2,11):
p.next = LNode(i)
p = p.next
p = list1
while p is not None:
print p.data
p = p.next
感受到了python的强大之处了吗,短短几行代码,就实现了对链表的构建以及遍历,各位可以在这上边的基础上扩充下,比如给链表加上一些插入、删除、定位、求链表长度等等方法。
今天先更新到这里,未完待续!
- python数据结构系列之单链表(一)
- python基础系列(三)之高级数据结构
- Python系列之 - python数据类型(一)
- Python系列(一)之Python基础
- Python数据结构之单链表
- python 数据结构一 之 线性表
- Python之玩转Jython系列(一)
- python系列之 - 面向对象(一)
- python基础系列(一)之基本数据类型
- 数据结构学习系列(一)
- 数据结构系列(一)
- 数据结构知识点系列一
- Python数据结构之单链表实现
- 数据结构之单链表(一)
- python数据结构(一)
- 数据结构系列之基数排序
- Python连载系列之Python语法基础3:Python中的字符串和数据结构
- 数据结构系列教程(一)
- JAVA-4.2-API帮助文档、String类、StringBuffer和StringBuilder
- 使用ssh框架开发网站的思考
- ZOJ
- 数学与我
- JAVA设计模式之单例模式
- python数据结构系列之单链表(一)
- spring中AOP 注解开发示例详解
- Bootstrap表格内容垂直水平居中
- ZOJ
- GYM101002 A
- java图的邻接表实现两种方式及实例应用分析
- HDOJ 5087 Revenge of LIS II (次大递增子序列)
- 4月5日,StringBufferPass,每日20行。
- 单例模式的八种写法比较