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使用装饰器进行django开发实例代码
Feb 06 Python
python中logging包的使用总结
Feb 28 Python
python 日志增量抓取实现方法
Apr 28 Python
儿童编程python入门
May 08 Python
超简单使用Python换脸实例
Mar 27 Python
Python实现的爬取小说爬虫功能示例
Mar 30 Python
Python Django Vue 项目创建过程详解
Jul 29 Python
新年福利来一波之Python轻松集齐五福(demo)
Jan 20 Python
基于keras 模型、结构、权重保存的实现
Jan 24 Python
python中JWT用户认证的实现
May 18 Python
Python unittest装饰器实现原理及代码
Sep 08 Python
jupyter使用自动补全和切换默认浏览器的方法
Nov 18 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
跟我学Laravel之请求(Request)的生命周期
2014/10/15 PHP
php获取网站百度快照日期的方法
2015/07/29 PHP
浅谈PHP中的数据传输CURL
2016/09/06 PHP
详解将数据从Laravel传送到vue的四种方式
2019/10/16 PHP
直接生成打开窗口代码,不必下载
2008/05/14 Javascript
CSS JavaScript 实现菜单功能 改进版
2008/12/09 Javascript
jQuery 的全选(全非选)即取得被选中的值使用介绍
2013/11/12 Javascript
js获取当前页面路径示例讲解
2014/01/08 Javascript
JavaScript设置body高度为浏览器高度的方法
2015/02/09 Javascript
深入理解JavaScript系列(41):设计模式之模板方法详解
2015/03/04 Javascript
nodeJS代码实现计算交社保是否合适
2015/03/09 NodeJs
简介JavaScript中strike()方法的使用
2015/06/08 Javascript
在Ubuntu系统上安装Node.JS的教程
2015/10/15 Javascript
js为什么不能正确处理小数运算?
2015/12/29 Javascript
Easyui和zTree两种方式分别实现树形下拉框
2017/08/04 Javascript
使用Vue组件实现一个简单弹窗效果
2018/04/23 Javascript
vue.js实现的经典计算器/科学计算器功能示例
2018/07/11 Javascript
vue项目动态设置页面title及是否缓存页面的问题
2018/11/08 Javascript
[08:47]2018国际邀请赛 OG战队举杯时刻
2018/08/29 DOTA
浅析python 内置字符串处理函数的使用方法
2014/06/11 Python
记录Django开发心得
2014/07/16 Python
python中迭代器(iterator)用法实例分析
2015/04/29 Python
Python实现的根据IP地址计算子网掩码位数功能示例
2018/05/23 Python
利用Python实现微信找房机器人实例教程
2019/03/10 Python
Python 中 -m 的典型用法、原理解析与发展演变
2019/11/11 Python
如何验证python安装成功
2020/07/06 Python
渔夫的故事教学反思
2014/02/14 职场文书
网络工程专业大学生求职信
2014/10/01 职场文书
校园新闻广播稿5篇
2014/10/10 职场文书
社区党风廉政建设调研报告
2015/01/01 职场文书
公司仓管员岗位职责
2015/04/01 职场文书
投资公司董事长岗位职责
2015/04/16 职场文书
2015年法务工作总结范文
2015/05/23 职场文书
2016入党培训心得体会范文
2016/01/08 职场文书
Java图书管理系统,课程设计必用(源码+文档)
2021/06/30 Java/Android
redis缓存存储Session原理机制
2021/11/20 Redis