python 双向链表_Python实现双向链表
打开Python开发工具IDLE,新建‘DoubleLinkedList.py’文件,并写代码如下;
class Node:
def __init__(self,item):
self.item = item
self.next = None
self.pre = None
class DoubleLinkedList:
def __init__(self):
self.__head = None
def add(self,item):
node = Node(item)
if self.isEmpty():
self.__head = node
else:
node.next = self.__head
self.__head.pre = node
self.__head = node
def isEmpty(self):
return self.__head == None
def walk(self):
cur = self.__head
while cur is not None:
print (cur.item)
cur = cur.next
def length(self):
cur = self.__head
count = 0
while cur is not None:
count += 1
cur = cur.next
return count
if __name__ == '__main__':
sll = DoubleLinkedList()
sll.add(8)
sll.add(9)
sll.walk()
walk、length、isEmpty三个函数和单向链表一样的,不需要改动,add函数要注意pre的赋值。
python 双向链表_Python实现双向链表相关推荐
- python程序双向链表_Python 实现双向链表(图解)
原文:https://blog.csdn.net/qq490691606/article/details/49948263 git 路径 https://github.com/wangpanjun/d ...
- python画代码-Python教程_Python画Mandelbrot集 代码
Python教程_Python画Mandelbrot集 代码 作者:Comet 来源: 课课家 www.kokojia.com点击数:278发布时间:2015-06-19 11:17:19 曼德勃罗集 ...
- php 双向链表,Go实现双向链表
本文介绍什么是链表,常见的链表有哪些,然后介绍链表这种数据结构会在哪些地方可以用到,以及 Redis 队列是底层的实现,通过一个小实例来演示 Redis 队列有哪些功能,最后通过 Go 实现一个双向链 ...
- c语言实现爬虫功能,用C/C 扩展Python语言_python 调用c语言 python实现简单爬虫功能_python实现简单爬虫...
用C/C 扩展Python语言 Python是一门功能强大的脚本语言,它的强大不仅表现在功能上,还表现在其扩展性上.她提供大量的API以方便程序员利用C/C++对Python进行扩展.因为执行速度慢几 ...
- 双向链表和循环双向链表的基本操作
双向链表和循环双向链表的基本操作 #include<stdio.h> #include<malloc.h> typedef struct LNode {int data;str ...
- python编程语言_python编程语言的简要历史
python编程语言 The Python programming language is a general-purpose programming language that has carved ...
- 2019最新Python学习教程(Python视频教程_Python学习教程_Python学习路线):你心目中编程界的MVP是谁?
2019最新Python学习教程(Python视频教程_Python学习教程_Python学习路线):你心目中编程界的MVP是谁?编程界的王者是渐落寞的Java还是大火的Python? 是不是你们也喜 ...
- python 双向链表_python算法与数据结构-双向链表(40)
一.双向链表的介绍 一种更复杂的链表是"双向链表"或"双面链表".每个节点有两个链接:一个指向前一个节点,当此节点为第一个节点时,指向空值:而另一个指向下一个节 ...
- python 双向链表_数据结构-双向链表(Python实现)
数据结构在编程世界中一直是非常重要的一环,不管是开发还是算法,哪怕是单纯为了面试,数据结构都是必修课,今天我们介绍链表中的一种--双向链表的代码实现. 好了,话不多说直接上代码. 双向链表 首先,我们 ...
最新文章
- 优秀工程师至关重要的一项技能,你解锁了吗?
- Java 线程同步组件 CountDownLatch 与 CyclicBarrier 原理分析
- ABAP Smart Help调试截图
- TCP文件上传Java_java 基于TCP协议的文件上传
- 指数型组织形成的 9 大驱动因素
- teechart mysql_TeeChart 的应用
- 吉林大学计算机与科学专业排名,吉林大学专业排名 哪些王牌专业推荐就读
- php网站不能访问,php怎么不登录不能访问
- libvirt-virsh命令
- php删除图片按钮代码,jquery 按钮预览图片功能的代码,我看不太懂。应该怎么学...
- contentprovider java_访问不了自己创建的Contentprovider,报错:java.lang.SecurityException: Permission Denial...
- 10款滑动门代码_jquery 滑动门_js滑动门_tab滑动门_jquery 选项卡_js选项卡_tab选项卡效果(一)
- UI设计师必备|Web设计尺寸规范
- 企业网站排名,站内布局,不只有关键词密度
- linux带密码解压密码,linux下解压有密码的rar压缩包
- 高级商务办公软件应用【9】
- SpringBoot项目启动异常:Field settlementMissService in...Service required a single bean, but 2 were found:
- 小白自总结【遥感图像目视解译】ArcGIS下 1/6北京区域 五类地物
- matlab 二自由度振动仿真,基于Adams和Matlab二自由度系统振动的仿真分析研究
- 变量被重复定义的问题
热门文章
- 数据仓库、商业智能的体系结构
- 微型计算机系统配置实训报告,微机配置方案设计实训报告2018
- php表单验证并使值变化,php – Zend_Form手动设置和验证字段值
- 2019蓝桥杯国赛B组第九题
- P2680 运输计划(树上差分+lca+二分)
- N的倍数(抽屉原理)
- oracle 不存在函数,Oracle – 此范围内不存在名称为X的函数
- LQ训练营(C++)学习笔记_栈与递归
- sql如何实现明细账_SQL 如何实现动态的行列转置
- 『设计模式』备忘录模式(memento)下象棋,我就想悔棋怎么办