Python数据结构与算法之列表(链表,linked list)简单实现

yipeiwu_com6年前Python基础

Python 中的 list 并不是我们传统(计算机科学)意义上的列表,这也是其 append 操作会比 insert 操作效率高的原因。传统列表——通常也叫作链表(linked list)——通常是由一系列节点(node)来实现的,其每一个节点(尾节点除外)都持有一个指向下一个节点的引用。

其简单实现:

class Node:
  def __init__(value, next=None):
    self.value = value
    self.next = next

接下来,我们就可使用链表的结构来组织所有节点了。

>>> L = None('a', Node('b', Node('c', Node('d'))))
>>> L.next.next.value
'c'

这是所谓的单向链表,双向链表的各节点还需要持有一个指向前一节点的引用。

总结

以上就是本文关于Python数据结构与算法之列表(链表,linked list)简单实现的全部内容,希望对大家有所帮助。感兴趣的朋友可以继续参阅本站:浅谈Python由__dict__和dir()引发的一些思考python中hashlib模块用法示例等,有什么问题可以随时留言,小编会及时回复大家的。

相关文章

Python编程实现微信企业号文本消息推送功能示例

本文实例讲述了Python微信企业号文本消息推送功能。分享给大家供大家参考,具体如下: 企业号的创建、企业号应用的创建、组、tag、part就不赘述了,一搜一大堆,但是网上拿的那些个脚本...

python opencv 二值化 计算白色像素点的实例

贴部分代码 #! /usr/bin/env python # -*- coding: utf-8 -*- import cv2 import numpy as np from PIL...

Python pandas常用函数详解

本文研究的主要是pandas常用函数,具体介绍如下。 1 import语句 import pandas as pd import numpy as np import matplot...

python中字符串比较使用is、==和cmp()总结

经常写 shell 脚本知道,字符串判断可以用 =,!= 数字的判断是 -eq,-ne 等,但是 Python 确不是这样子的。 所以作为慢慢要转换到用 Python 写脚本,这些基本...

python定时检查某个进程是否已经关闭的方法

本文实例讲述了python定时检查某个进程是否已经关闭的方法。分享给大家供大家参考。具体如下: import threading import time import os impo...