【剑指Offer】链表中倒数第k个节点 解题报告(Python)

标签(空格分隔): LeetCode


题目地址:https://www.nowcoder.com/ta/coding-interviews

题目描述:

输入一个链表,输出该链表中倒数第k个结点。

Ways

这个题的做法大家应该都知道了,就是使用两个指针,走在前面的指针比走在后面的指针优先k-1步,这样当走在前面的指针走到头的时候,走在后面的指针正好到了倒数第k个节点。

需要注意的是代码的鲁棒性。有以下三点:

  1. 头结点不存在
  2. k为0
  3. 链表长度小于k

都要有合理的解决方法。fangfa

# -*- coding:utf-8 -*-
# class ListNode:
# def __init__(self, x):
# self.val = x
# self.next = None class Solution:
def FindKthToTail(self, head, k):
if not head or not k:
return None
left, right = head, head
for i in range(k - 1):
if not right.next:
return None
right = right.next
while right.next:
left = left.next
right = right.next
return left

Date

2018 年 3 月 11 日

最新文章

  1. nginx小记
  2. CF 370B Berland Bingo
  3. WinForm------TextEdit控件去掉换行符
  4. easyui设置界面的高度自适应
  5. HTTP协议:header标头说明
  6. 012. asp.net生成验证码图片(汉字示例/字母+数字)
  7. linux shell 实现node-webkit的自动跨平台打包
  8. logback使用笔记
  9. Spring 整合 Tibco EMS
  10. myeclipse实现Servlet实例(1) 通过继承servlet接口实现
  11. poj 2773 Happy 2006 容斥原理+二分
  12. 后端数据库使用 Bomb方案
  13. 【推荐】桌面版AI伴侣 含2.47 2.49 2.51汉化版
  14. Cocos Creator 资源加载流程剖析【一】——cc.loader与加载管线
  15. ASP.NET上传文件到远程服务器(HttpWebRequest)
  16. ArrayList 除重
  17. js a标签 + ajax 多参数穿参
  18. 【Python】【有趣的模块】【requests】【一】HTTP头信息总结
  19. java递归 处理权限管理菜单树或分类
  20. 关联容器map(红黑树,key/value),以及所有的STL容器详解

热门文章

  1. STM32驱动直流电机的程序与电路设计(IR2110S自举电路+H桥+高级定时器和死区PWM)
  2. Hadoop入门 完全分布式运行模式-准备
  3. 基于 Golang 构建高可扩展的云原生 PaaS(附 PPT 下载)
  4. admire, admit
  5. [C++] vptr, where are you?
  6. Docker学习(五)——Docker仓库管理
  7. Windows zip版本安装MySQL
  8. ubantu上编辑windows程序
  9. Mybatis中 SIMPLE、REUSE、BATCH的区别
  10. springMVC中响应的返回值获取方式