PHP获取链表中倒数第K个节点的方法


Posted in PHP onJanuary 18, 2018

本文实例讲述了PHP获取链表中倒数第K个节点的方法。分享给大家供大家参考,具体如下:

问题

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

解决思路

注意这个题目是返回节点,而不是返回值。返回值的话可以用栈来存储。返回节点则不能这样做。

设置两个指针,先让第一个指针移动k-1次。然后两个指针同时移动,当第一个指针到达最后一个节点,第二个指针就在倒数第k个节点。

注意边界:K长度可能超出链表长度,所以当第一个指针的next为空时,返回null

实现代码

<?php
/*class ListNode{
 var $val;
 var $next = NULL;
 function __construct($x){
  $this->val = $x;
 }
}*/
function FindKthToTail($head, $k)
{
 if($head == NULL || $k ==0)
  return NULL;
 $pre = $head;
 $last = $head;
 for($i=1; $i<$k; $i++){
  if($last->next == NULL)
   return NULL;
  else
   $last = $last->next;
 }
 while($last->next != NULL){
  $pre = $pre->next;
  $last = $last->next;
 }
 return $pre;
}

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

PHP 相关文章推荐
PHP5中的this,self和parent关键字详解教程
Mar 19 PHP
dede全站URL静态化改造[070414更正]
Apr 17 PHP
php Undefined index的问题
Jun 01 PHP
php获取apk包信息的方法
Aug 15 PHP
php版本的cron定时任务执行器使用实例
Aug 19 PHP
字符串长度函数strlen和mb_strlen的区别示例介绍
Sep 09 PHP
php进行支付宝开发中return_url和notify_url的区别分析
Dec 22 PHP
PHP设计模式之工厂模式与单例模式
Sep 28 PHP
PHP使用curl制作简易百度搜索
Nov 03 PHP
详解PHP防止盗链防止迅雷下载的方法
Apr 26 PHP
PHP Swoole异步MySQL客户端实现方法示例
Oct 24 PHP
PHP7 错误处理机制修改
Mar 09 PHP
PHP获取二叉树镜像的方法
Jan 17 #PHP
PHP实现按之字形顺序打印二叉树的方法
Jan 16 #PHP
PHP实现可添加水印与生成缩略图的图片处理工具类
Jan 16 #PHP
PHP实现找出链表中环的入口节点
Jan 16 #PHP
详解thinkphp中的volist标签
Jan 15 #PHP
thinkphp 中的volist标签在ajax操作中的特殊性(推荐)
Jan 15 #PHP
PHP7扩展开发之基于函数方式使用lib库的方法详解
Jan 15 #PHP
You might like
CI框架整合widget(页面格局)的方法
2016/05/17 PHP
javascript firefox不显示本地预览图片问题的解决方法
2008/11/12 Javascript
JavaScript 创建对象
2009/07/17 Javascript
jQuery插件开发全解析
2012/10/10 Javascript
自动最大化窗口的Javascript代码
2013/05/22 Javascript
JS控制阿拉伯数字转为中文大写示例代码
2013/09/04 Javascript
jQuery实现复选框成对选择及对应取消的方法
2015/03/03 Javascript
JavaScript给按钮绑定点击事件(onclick)的方法
2015/04/07 Javascript
Javascript实现登录记住用户名和密码功能
2017/03/22 Javascript
详解基于vue的移动web app页面缓存解决方案
2017/08/03 Javascript
vue axios 二次封装的示例代码
2017/12/08 Javascript
vue-cli监听组件加载完成的方法
2018/09/07 Javascript
vue 基于element-ui 分页组件封装的实例代码
2018/12/10 Javascript
深入理解js A*寻路算法原理与具体实现过程
2018/12/13 Javascript
详解vue-cli中使用rem,vue自适应
2019/05/06 Javascript
JS学习笔记之贪吃蛇小游戏demo实例详解
2019/05/29 Javascript
Python Web程序部署到Ubuntu服务器上的方法
2018/02/22 Python
Python实现爬虫从网络上下载文档的实例代码
2018/06/13 Python
Python常见内置高效率函数用法示例
2018/07/31 Python
python使用原始套接字发送二层包(链路层帧)的方法
2019/07/22 Python
Python字符编码转码之GBK,UTF8互转
2020/02/09 Python
Python图像处理库PIL中图像格式转换的实现
2020/02/26 Python
python怎么判断模块安装完成
2020/06/19 Python
Django基于Models定制Admin后台实现过程解析
2020/11/11 Python
德国古洛迷亚百货官网:GALERIA Kaufhof
2017/06/20 全球购物
Tory Burch德国官网:美国时尚生活品牌
2018/01/03 全球购物
摩飞电器俄罗斯官方网站:Morphy Richards俄罗斯
2020/07/30 全球购物
Linux面试题LINUX系统类
2015/11/25 面试题
高一政治教学反思
2014/01/28 职场文书
DIY手工制作经营店创业计划书
2014/02/01 职场文书
体育教学随笔感言
2014/02/24 职场文书
党员转正申请报告
2015/05/15 职场文书
2016年寒假政治学习心得体会
2015/10/09 职场文书
幼儿教师三分钟演讲稿
2019/06/21 职场文书
企业管理不到位检讨书
2019/06/27 职场文书
小学作文指导之如何写人?
2019/07/08 职场文书