python实现单链表中删除倒数第K个节点的方法


Posted in Python onSeptember 28, 2018

本文实例为大家分享了python实现单链表中删除倒数第K个节点的具体代码,供大家参考,具体内容如下

题目:

给定一个链表,删除其中倒数第k个节点。

代码:

class LinkedListAlgorithms(object):
 def __init__(self):
  pass

 def rm_last_kth_node(self, k, linked_list): # 删除倒数第 K 个节点,针对单链表的
  if linked_list.is_empty():
   print 'The given linked_list is empty.'
  if k < 1 or k > linked_list.get_length():
   print 'Wrong kth number out of index.'
  k = linked_list.get_length() - k
  if k == 0:
   p = linked_list.head
   linked_list.head = p.next
  else:
   p = linked_list.head
   for i in xrange(k-1):
    p = p.next
   p.next = p.next.next

分析:

在这个函数中,我又一次写了从单链表中删除一个节点的代码,事实上不需要,因为我在实现单链表类的时候已经写过了删除一个结点的方法了。Python版本单链表实现代码时间复杂度就是一遍循环链表,空间复杂度用到了一个指针。

如果是双链表的话,复杂度并没降低,毕竟仍然要一遍循环。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python创建日历实例
Aug 21 Python
在Python中利用Into包整洁地进行数据迁移的教程
Mar 30 Python
Python实现删除文件中含“指定内容”的行示例
Jun 09 Python
Python矩阵常见运算操作实例总结
Sep 29 Python
numpy中实现ndarray数组返回符合特定条件的索引方法
Apr 17 Python
异步任务队列Celery在Django中的使用方法
Jun 07 Python
python 实现得到当前时间偏移day天后的日期方法
Dec 31 Python
Django框架组成结构、基本概念与文件功能分析
Jul 30 Python
Python3标准库之dbm UNIX键-值数据库问题
Mar 24 Python
python将logging模块封装成单独模块并实现动态切换Level方式
May 12 Python
Python如何在单元测试中给对象打补丁
Aug 03 Python
基于python实现坦克大战游戏
Oct 27 Python
使用Python处理BAM的方法
Sep 28 #Python
python版本单链表实现代码
Sep 28 #Python
python实现反转部分单向链表
Sep 27 #Python
python八皇后问题的解决方法
Sep 27 #Python
python判断数字是否是超级素数幂
Sep 27 #Python
Flask实现跨域请求的处理方法
Sep 27 #Python
python环形单链表的约瑟夫问题详解
Sep 27 #Python
You might like
解决cPanel无法安装php5.2.17
2014/06/22 PHP
PHP获取当前完整URL地址的函数
2014/12/21 PHP
PHP面向对象程序设计组合模式与装饰模式详解
2016/12/02 PHP
PHP实现添加购物车功能
2017/03/06 PHP
PHP实现的多维数组去重操作示例
2018/07/21 PHP
javascript 火狐(firefox)不显示本地图片问题解决
2008/07/05 Javascript
javascript 定义初始化数组函数
2009/09/07 Javascript
JavaScript使用IEEE 标准进行二进制浮点运算产生莫名错误的解决方法
2011/05/28 Javascript
javascript记录文本框内文字个数检测文字个数变化
2014/10/14 Javascript
javascript中使用new与不使用实例化对象的区别
2015/06/22 Javascript
js实现数组冒泡排序、快速排序原理
2016/03/08 Javascript
Javascript生成带参数的二维码示例
2016/10/10 Javascript
JS html时钟制作代码分享
2017/03/03 Javascript
angular动态删除ng-repaeat添加的dom节点的方法
2017/07/20 Javascript
vue中倒计时组件的实例代码
2018/07/06 Javascript
d3绘制基本的柱形图的实现代码
2018/12/12 Javascript
新手快速上手webpack4打包工具的使用详解
2019/01/28 Javascript
vue使用微信扫一扫功能的实现代码
2020/04/11 Javascript
简单实现python聊天程序
2018/04/01 Python
python去除文件中重复的行实例
2018/06/29 Python
Python http接口自动化测试框架实现方法示例
2018/12/06 Python
Django框架中间件(Middleware)用法实例分析
2019/05/24 Python
ubuntu上安装python的实例方法
2019/09/30 Python
20行Python代码实现视频字符化功能
2020/04/13 Python
基于Python的接口自动化读写excel文件的方法
2021/01/15 Python
整理的15个非常有用的 HTML5 开发教程和速查手册
2011/10/18 HTML / CSS
KIKO美国官网:意大利的平价彩妆品牌
2017/05/16 全球购物
如何理解委托
2012/01/06 面试题
模具设计与制造专业应届生求职信
2013/10/18 职场文书
春季运动会广播稿大全
2014/02/19 职场文书
学历公证书范本
2014/04/09 职场文书
学习雷锋寄语大全
2014/04/11 职场文书
五四青年节活动总结
2015/02/10 职场文书
如何利用opencv判断两张图片是否相同详解
2021/07/07 Python
基于Redis的List实现特价商品列表功能
2021/08/30 Redis
MySQL 原理与优化之原数据锁的应用
2022/08/14 MySQL