线性表的链式存储又称为单链表,特色指通过一组任意存储单元来存储线性表种的数据元素,为数据元素之间建立起线性关系。每个元素间逻辑上相邻,物理位置不相邻。
链式存储优点在于插入删除,缺点查找速度慢,以下是链式表的python实现:
#coding:utf-8
'''
author:xzfreewind
'''
class Node(object):
def __init__(self,val,p=0):
self.value = val
self.next = p
class linlList(object):
def __init__(self):
self.head = 0
#将数组初始化成链表
def initlist(self,list):
self.head = Node(list[0])
p = self.head
for i in list[1:]:
node = Node(i)
p.next = node
p = p.next
#获取链表长度
def getLength(self):
length = 0
p = self.head
while p != 0:
length += 1
p = p.next
return l