码迷,mamicode.com
首页 > 其他好文 > 详细

链表中倒数第k个结点

时间:2015-08-25 21:03:58      阅读:125      评论:0      收藏:0      [点我收藏+]

标签:

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

开始没有判断pListHead==NULL,导致输出错误。

 1 /*
 2 struct ListNode {
 3     int val;
 4     struct ListNode *next;
 5     ListNode(int x) :
 6             val(x), next(NULL) {
 7     }
 8 };*/
 9 class Solution {
10 public:
11     ListNode* FindKthToTail(ListNode* pListHead, unsigned int k) {
12         if(pListHead==NULL) return NULL;
13         if(k==0) return NULL;
14         ListNode* endnode=pListHead;
15         ListNode* resnode=pListHead;
16         k--;
17         while(k!=0){
18             if(endnode->next!=NULL){
19                 endnode=endnode->next;
20             }
21             else 
22                 return NULL;
23             k--;
24         }
25         while(endnode->next!=NULL){
26             endnode=endnode->next;
27             resnode=resnode->next;
28         }
29         return resnode;
30     
31     }
32 };

 

链表中倒数第k个结点

标签:

原文地址:http://www.cnblogs.com/zl1991/p/4758274.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!