# -*- coding:utf-8 -*-
# auther="金木水火"
#链表
'''
1. 链表两个域,值+指针
2. 指针存放下一个节点的位置
3. 变量p指向表头
4. 最后一个节点指向None
5. 后进先出
'''
class node():
#定义第一个节点
def __init__(self,iterm=None):
self.iterm=iterm
self.next=None
class simpleLink():
'''简单链表'''
def __init__(self,node=None):
self.__head=node
def is_empty(self):
if self.__head is None:
print('链表为空')
def add(self,iterm):
n=node(iterm)
n.next=self.__head
self.__head=n
def select(self):
cur=self.__head
while cur != None:
print(cur.iterm)
cur=cur.next
class DoubleNode():
def __init__(self,iterm=None):
self.iterm = iterm
self.next = None
self.prev =None
class DLink():
'''双链表'''
def __init__(self,node=None):
self.__head=node
def is_empty(self):
'''链表是否为空'''
return self.__head == None
def add(self,item):
node = DoubleNode(item)
if self.is_empty():
node.next = self.__head
self.__head = node
else:
node.next = self.__head
self.__head = node
node.next.prev = node
def select(self):
cur=self.__head
while cur != None:
print(cur.iterm)
cur=cur.next
if "__main__" == __name__:
s = DLink()
s.add(1)
s.add(2)
s.select()
# s=simpleLink()
# s.add(1)
# s.add(2)
# s.select()
python 实现链表
©著作权归作者所有,转载或内容合作请联系作者
- 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
- 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
- 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
推荐阅读更多精彩内容
- 链表是编程中的一种常用数据结构,具有很强的灵活性。由于python中不存在有指针,这里将使用python中的引用来...