码迷,mamicode.com
首页 > 编程语言 > 详细

Python实现链表

时间:2018-05-17 00:54:26      阅读:201      评论:0      收藏:0      [点我收藏+]

标签:head   for   sel   node   节点   链表   end   code   none   

1.1实现单向链表

#链表结构分成2部分 head,tail
#(‘a‘,(‘b‘,(‘c‘,none)))
#迭代时候 Head is a   ;;;; tail is (‘b‘,(‘c‘,none))
#append时候 tail指向最后一个节点(c,‘none)
class Node:
    def __init__(self,item,next=None):
        self.item = item
        self.next = next

    def __repr__(self):
        return repr(self.item)
class SingleLinked:
    def __init__(self):
        self.head = None
        self.tail = None
        self.items = []

    def append(self,item):
        node = Node(item)
        if self.head is None:
            self.head = node
        else:
            self.tail.next = node
        self.tail = node
        self.items.append(node)
        return self

    def iternode(self):
        while self.head:
            yield self.head
            self.head = self.head.next
    def __getitem__(self, item):
        return self.items[item]
ll = SingleLinked()
ll.append(1).append(2).append(3).append(4)
print(ll[2])
for i in ll.iternode():
    print(i)

 

Python实现链表

标签:head   for   sel   node   节点   链表   end   code   none   

原文地址:https://www.cnblogs.com/harden13/p/9048883.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!