Python 中的 list 并不是我们传统(计算机科学)意义上的列表,这也是其 append 操作会比 insert 操作效率高的原因。传统列表——通常也叫作链表(linked list)——通常是由一系列节点(node)来实现的,其每一个节点(尾节点除外)都持有一个指向下一个节点的引用。
其简单实现:
1
2
3
4
|
class Node: def __init__(value, next = None ): self .value = value self . next = next |
接下来,我们就可使用链表的结构来组织所有节点了。
1
2
3
|
>>> L = None ( 'a' , Node( 'b' , Node( 'c' , Node( 'd' )))) >>> L. next . next .value 'c' |
这是所谓的单向链表,双向链表的各节点还需要持有一个指向前一节点的引用。
总结
以上就是本文关于Python数据结构与算法之列表(链表,linked list)简单实现的全部内容,希望对大家有所帮助。有什么问题可以随时留言,小编会及时回复大家的。
原文链接:http://blog.csdn.net/lanchunhui/article/details/50942216