当前位置:网站首页>链表-倒数最后k个结点
链表-倒数最后k个结点
2022-07-26 17:31:00 【早田凛凛子】
题目:
输入一个长度为 n 的链表,设链表中的元素的值为 ai ,返回该链表中倒数第k个节点。
如果该链表长度小于k,请返回一个长度为 0 的链表。
例如输入{1,2,3,4,5},2时,对应的链表结构如下图所示:
其中蓝色部分为该链表的最后2个结点,所以返回倒数第2个结点(也即结点值为4的结点)即可,系统会打印后面所有的节点来比较。
解题思路:
设置两个指针,flag和cur,flag到达链表尾部的时候,flag与cur之间的距离标识k值。
解题代码:
/**
* struct ListNode {
* int val;
* struct ListNode *next;
* ListNode(int x) : val(x), next(nullptr) {}
* };
*/
class Solution {
public:
/**
* 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
*
*
* @param pHead ListNode类
* @param k int整型
* @return ListNode类
*/
ListNode* FindKthToTail(ListNode* pHead, int k) {
// write code here
ListNode* flag=pHead;
ListNode* cur=pHead;
for(int i=0;i<k;i++){
if(!flag){
return nullptr;//当flag值为null的时候,表示k值大于链表的长度
}
flag=flag->next;
}
while(flag){
cur=cur->next;
flag=flag->next;
}
return cur;
}
};
边栏推荐
- Spark data format unsafe row
- 你适合做自动化 测试吗?
- 菜鸟 CPaaS 平台微服务治理实践
- Sequential storage structure of linear table -- sequential table
- Win10 连接无线不能输入密码字符,一输入就卡死
- LeetCode 0139. 单词拆分
- 百度飞桨EasyDL X 韦士肯:看轴承质检如何装上“AI之眼”
- Leetcode 50 day question brushing plan (day 4 - longest palindrome substring 14.00-16:20)
- SSH based online mall
- ssm练习第四天_获取用户名_用户退出_用户crud_密码加密_角色_权限
猜你喜欢
随机推荐
URL jump vulnerability
[metauniverse OMI theory] analyze Web3 risk challenges and build Web3 ecological security
Leetcode 50 day question brushing plan (day 3 - concatenate substrings of all words 10.00-13.20)
Three ways of de duplication in SQL
Sequential storage structure of linear table -- sequential table
相对路径与绝对路径
Greedy - 455. Distribute cookies
Kindergarten system based on SSM
PMP Exam details, what changes have been made to the new exam outline?
VIM multiline operation
[Day2] cinema ticket
SSM练习第五天
Mondriaans's dream (state compression DP)
效率提升98%!高海拔光伏电站运维巡检背后的AI利器
Data warehouse: fact table of detailed dimensional modeling
我要开中信的证券账户找渠道的经理开安全吗?
Understanding service governance in distributed development
网上炒股,选择在哪里开户比较安全呢?
[training day3] delete
Drools basic grammar









