python实现从尾到头打印单链表操作示例


Posted in Python onFebruary 22, 2020

本文实例讲述了python实现从尾到头打印单链表操作。分享给大家供大家参考,具体如下:

# coding=utf-8
class SingleNode:
 
  def __init__(self, item):
    self.item = item
    self.next = None
 
class SingleLinkedList:
  """
  is_empty() 链表是否为空
  print_end_to_head() 从尾到头打印单链表
  append(item) 链表尾部添加元素
  """
 
  def __init__(self):
    self._head = None
 
  def is_empty(self):
    return self._head is None
 
  def append(self, item):
    if self.is_empty():
      self._head = item
    else:
      cur = self._head
      while cur.next:
        cur = cur.next
      cur.next = item
 
  def print_end_to_head(self):
    """从尾到头打印单链表"""
    if self.is_empty():
      print(None)
      return
    tmp = []
    cur = self._head
    while cur:
      tmp.insert(0, cur)
      cur = cur.next
    for i in tmp:
      print(i.item)
 
if __name__ == '__main__':
  sl = SingleLinkedList()
  sl.append(SingleNode(1))
  sl.append(SingleNode(2))
  sl.append(SingleNode(3))
  sl.append(SingleNode(4))
  sl.print_end_to_head()

运行结果:

4
3
2
1

PS:对象obj的打印,可使用如下语句实现:

print '\n'.join(['%s:%s' % item for item in obj.__dict__.items()])

希望本文所述对大家Python程序设计有所帮助。

Python 相关文章推荐
python实现按行切分文本文件的方法
Apr 18 Python
python的变量与赋值详细分析
Nov 08 Python
pandas修改DataFrame列名的方法
Apr 08 Python
Python通过属性手段实现只允许调用一次的示例讲解
Apr 21 Python
对Python中for复合语句的使用示例讲解
Nov 01 Python
通过PHP与Python代码对比的语法差异详解
Jul 10 Python
Win10系统下安装labelme及json文件批量转化方法
Jul 30 Python
Django ORM 聚合查询和分组查询实现详解
Aug 09 Python
Python实现滑动平均(Moving Average)的例子
Aug 24 Python
Python Process多进程实现过程
Oct 22 Python
Pycharm+Python工程,引用子模块的实现
Mar 09 Python
python如何导入依赖包
Jul 13 Python
python实现滑雪游戏
Feb 22 #Python
Python实现栈的方法详解【基于数组和单链表两种方法】
Feb 22 #Python
Python栈的实现方法示例【列表、单链表】
Feb 22 #Python
python实现滑雪者小游戏
Feb 22 #Python
python实现拼图小游戏
Feb 22 #Python
Python双链表原理与实现方法详解
Feb 22 #Python
Python单链表原理与实现方法详解
Feb 22 #Python
You might like
将文件夹压缩成zip文件的php代码
2009/12/14 PHP
使用PHP获取网络文件的实现代码
2010/01/01 PHP
php数据库密码的找回的步骤
2011/01/12 PHP
php牛逼的面试题分享
2013/01/18 PHP
PHP运行模式的深入理解
2013/06/03 PHP
Laravel jwt 多表(多用户端)验证隔离的实现
2019/12/18 PHP
PHP读取文件,解决中文乱码UTF-8的方法分析
2020/01/22 PHP
JavaScript入门学习书籍推荐
2008/06/12 Javascript
jQuery给动态添加的元素绑定事件的方法
2015/03/09 Javascript
JavaScript给url网址进行encode编码的方法
2015/03/18 Javascript
JavaScript将数字转换成大写中文的方法
2015/03/23 Javascript
JQuery中DOM事件冒泡实例分析
2015/06/13 Javascript
js判断数组key是否存在(不用循环)的简单实例
2016/08/03 Javascript
微信小程序-详解数据缓存
2016/11/24 Javascript
JavaScript 详解预编译原理
2017/01/22 Javascript
BootStrapValidator初使用教程详解
2017/02/10 Javascript
vue2 中如何实现动态表单增删改查实例
2017/06/09 Javascript
JavaScript队列函数和异步执行详解
2017/06/19 Javascript
JS中Swiper的使用和轮播图效果
2017/08/11 Javascript
详解基于mpvue的小程序markdown适配解决方案
2018/05/08 Javascript
angular4自定义表单控件[(ngModel)]的实现
2018/11/23 Javascript
webpack4.x下babel的安装、配置及使用详解
2019/03/07 Javascript
js实现3D照片墙效果
2019/10/28 Javascript
vue跳转页面的几种方法(推荐)
2020/03/26 Javascript
selenium2.0中常用的python函数汇总
2019/08/05 Python
python批量将excel内容进行翻译写入功能
2019/10/10 Python
pytorch 自定义参数不更新方式
2020/01/06 Python
Django Channel实时推送与聊天的示例代码
2020/04/30 Python
python获取响应某个字段值的3种实现方法
2020/04/30 Python
python 5个实用的技巧
2020/09/27 Python
Subside Sports德国:足球球衣和球迷商品
2019/06/08 全球购物
高中军训感言800字
2014/03/05 职场文书
连锁超市项目计划书
2014/09/15 职场文书
群众路线个人整改方案
2014/10/25 职场文书
老干部工作汇报材料
2014/10/28 职场文书
2015年班级元旦晚会活动总结
2014/11/28 职场文书