输入一个链表,输出该链表中倒数第k个结点
解题思路
/*** 两个指针p1,p2,开始都指向头结点* 先让p2走k步* 然后p1,p2同时向下走* 当p2指向null的时候,p1就是倒数第k个节点*/
代码
/*
class ListNode {int val;ListNode next = null;ListNode(int val) {this.val = val;}
}*/public static ListNode FindKthToTail(ListNode head,int k) {if(head == null) return null;ListNode p1 = head,p2 = head;while (k>0 && p2 != null){p2 = p2.next;k--;}//p2 指向head说明k<=0,p2==null && k>0说明 k超过了链表的长度if(p2 == head || (p2 == null && k>0)) return null;while (p2!=null){p1 = p1.next;p2 = p2.next;}return p1;}
输入一个链表,输出该链表中倒数第k个结点相关推荐
- 【编程题目】输入一个单向链表,输出该链表中倒数第 k 个结点
第 13 题(链表): 题目:输入一个单向链表,输出该链表中倒数第 k 个结点.链表的倒数第 0 个结点为链表 的尾指针. 链表结点定义如下: struct ListNode { int m_nKey ...
- 算法:输入一个链表,输出该链表中倒数第k个结点。
算法:输入一个链表,输出该链表中倒数第k个结点.<剑指offer> 思路加到注释里面了: 1:两个if判断是否返回值为空,首个为空,没有第k个值: 2:for循环找到倒数第k个值,返回为a ...
- 一个单向链表,输出该链表中倒数第k个结点,链表的倒数第0个结点为链表的尾指针
输入一个单向链表,输出该链表中倒数第k个结点.链表的倒数第0个结点为链表的尾指针 typedef struct _node_t {struct _node_t *next;int data; }Nod ...
- 输出链表中倒数第k个结点
题目描述输入一个链表,输出该链表中倒数第k个结点. 分类:链表 解法1:双指针,第一个指针先走k步,然后第二个指针也开始走,当第一个指针到达末尾,第二个指针也就是到了倒数第k个节点 要注意null链表 ...
- 输出该链表中倒数第k个结点
package demo;/* public class headNode {int val;headNode next = null;headNode(int val) {this.val = va ...
- 华为机试HJ51:输出单向链表中倒数第k个结点
作者:翟天保Steven 版权声明:著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处 题目描述: 输入一个单向链表,输出该链表中倒数第k个结点,链表的倒数第1个结点为链表的尾指针. ...
- 剑指offer_第14题_链表中倒数第k个结点_Python
题目描述 输入一个链表,输出该链表中倒数第k个结点. 理解 链表详解 python数据结构之链表 解题思路 思路1 确定链表种结点个数lenth 倒数第k个结点就是第length-k+1个结点 需要考 ...
- 【Java】找到链表中倒数第k个结点
题目描述 : 输入一个链表,输出该链表中倒数第k个结点. 解题思路 : 1.根据以上链表进行分析 2.算法思想 : 定义两个引用,即快慢指针,都从头节点开始向后走: 要找到倒数第k个节点,即要让快指针 ...
- 剑指offer:链表中倒数第k个结点 python实现
链表中倒数第k个结点 输入一个链表,输出该链表中倒数第k个结点. 解题思路 暴力求解: 判断链表是否为空: 复制链表,遍历一遍统计其长度: 如果长度小于k.则返回None: 否则,返回其长度-k的链表 ...
- 面试经典:链表中倒数第k个结点?如何从大量数据中找出高频词?
记录两道面试题: 题目描述: 输入一个链表,输出该链表中倒数第k个结点.(单向链表) 拿到这个问题的时候自然而然会想到让链表从末尾开始next K-1 次不就是第K-1个节点了么,但是必须要注意一 ...
最新文章
- centos7重新加载服务的命令_阿粉手把手教你在 CentOS7 下搭建 Jenkins
- C语言实现链式栈(LinkStack)
- string获取 倒数 下标_Redis系列:Redis字符串(STRING)介绍
- Spark系列-初体验(数据准备篇)
- Java集合(Collection)综述
- 来到ThoughtWorks
- python程序中name的作用_python编程中的if __name__ == '__main__': 的作用和原理
- DASCTF2022.07赋能赛 - Pwn easyheap
- pageHelper.startPage(m,n)的用法
- mpAndroidchart 坐标和图表距离_合二为一——在Excel中制作组合图表!
- DAS、SAN和NAS三种存储方式
- AList上传文件提示Request failed with status code 413
- VC++实现打开文件和打开所在文件夹的功能(附源码)
- windows保护无法启动修复服务器,如何解决win10“Windows资源保护无法启动修复服务”错误 | MOS86...
- SPFA 跑得快,跑得快。最小花费问题
- Oracle 数据精度错误-ORA-01438
- java线程说法正确是_下列关于Java线程的说法正确的是
- Neo4j 系列(1) —— 初识 Neo4j
- rv1126开发板设置修改ip地址
- jieba+wordcloud 分词+词频可视化 问题总结