当前位置: 首页 > news >正文

IT公司100题-13-求链表中倒数第k个结点

2019独角兽企业重金招聘Python工程师标准>>> hot3.png

问题描述:

输入一个单向链表,输出该链表中倒数第k个结点。链表倒数第0个节点为NULL。

public static class Node{
   public int data;
   public Node next = null;
   public Node(int d, Node p){
      data = d;
      next = p;
   }
}

分析:

方法1:

递归

private int nthToLastv1(Node p, int k){
   if(p.next == null)
      return 0;
   int i = nthToLastv1(p.next, k) + 1;
   if(k == i)
      System.out.println(p.data);
   return i;
}

方法2:

非递归

private void nthToLastv2(int k){
   Node p1 = head.next;
   Node p2 = head.next;
   for (int i = 1; i < k; i++){
      p2 = p2.next;
   }

   while(p2.next != tail){
      p1 = p1.next;
      p2 = p2.next;
   }
   if(p1 != null) System.out.println(p1.data);
}


转载于:https://my.oschina.net/jimmyhan/blog/544508

相关文章:

  • Log aggregation has not completed or is not enabled.
  • linux安装scikit-learn
  • JavaMail:搜索、过滤接收邮件,删除邮件
  • 对JS继承的一点思考
  • 成为一名优秀的Developer的书单
  • HDU ACM 2586 How far away ?LCA-gt;并查集+Tarjan(离线)算法
  • php正则获取网页标题、关键字、网页描述代码
  • centos 6.4配置samba+ldap认证
  • 理解并取证:以太通道的动态协商机制的工作原理
  • Linux内核跟踪之trace框架分析【转】
  • 转 C#图像处理(各种旋转、改变大小、柔化、锐化、雾化、底片、浮雕、黑白、滤镜效果)...
  • [ 2222 ]http://e.eqxiu.com/s/wJMf15Ku
  • Spring-AOP
  • Exchange2013下Telnet发送测试邮件失败及解决方案
  • 《FPGA全程进阶---实战演练》之搞定阻抗匹配
  • hexo+github搭建个人博客
  • 「前端」从UglifyJSPlugin强制开启css压缩探究webpack插件运行机制
  • 【前端学习】-粗谈选择器
  • 345-反转字符串中的元音字母
  • avalon2.2的VM生成过程
  • iOS筛选菜单、分段选择器、导航栏、悬浮窗、转场动画、启动视频等源码
  • React Native移动开发实战-3-实现页面间的数据传递
  • Redis 中的布隆过滤器
  • Spring Security中异常上抛机制及对于转型处理的一些感悟
  • springMvc学习笔记(2)
  • SQLServer之索引简介
  • text-decoration与color属性
  • vue2.0开发聊天程序(四) 完整体验一次Vue开发(下)
  • 看图轻松理解数据结构与算法系列(基于数组的栈)
  • 聊聊spring cloud的LoadBalancerAutoConfiguration
  • 漫谈开发设计中的一些“原则”及“设计哲学”
  • 强力优化Rancher k8s中国区的使用体验
  • 小程序button引导用户授权
  • 正则学习笔记
  • 中文输入法与React文本输入框的问题与解决方案
  • Semaphore
  • 如何在 Intellij IDEA 更高效地将应用部署到容器服务 Kubernetes ...
  • ​批处理文件中的errorlevel用法
  • ###项目技术发展史
  • #{}和${}的区别?
  • #【QT 5 调试软件后,发布相关:软件生成exe文件 + 文件打包】
  • #单片机(TB6600驱动42步进电机)
  • $.extend({},旧的,新的);合并对象,后面的覆盖前面的
  • (2)关于RabbitMq 的 Topic Exchange 主题交换机
  • (PyTorch)TCN和RNN/LSTM/GRU结合实现时间序列预测
  • (Spark3.2.0)Spark SQL 初探: 使用大数据分析2000万KF数据
  • (附源码)springboot 基于HTML5的个人网页的网站设计与实现 毕业设计 031623
  • (附源码)ssm户外用品商城 毕业设计 112346
  • (十五)Flask覆写wsgi_app函数实现自定义中间件
  • (转)拼包函数及网络封包的异常处理(含代码)
  • ***微信公众号支付+微信H5支付+微信扫码支付+小程序支付+APP微信支付解决方案总结...
  • .form文件_一篇文章学会文件上传
  • .Net CoreRabbitMQ消息存储可靠机制
  • .NET 材料检测系统崩溃分析
  • .NET设计模式(8):适配器模式(Adapter Pattern)