題目描述
輸入一個(gè)鏈表,輸出該鏈表中倒數(shù)第k個(gè)結(jié)點(diǎn)园匹。
public class Solution {
public ListNode FindKthToTail(ListNode head,int k) {
ListNode p1 = null;
ListNode p2 = null;
// 使p1指向第k個(gè)節(jié)點(diǎn)
while(k>0){
if(p1==null){
p1=head;
}else{
p1=p1.next;
}
k--;
}
//p1乐尊、p2同時(shí)向前推進(jìn)戚丸,直到p1到達(dá)尾部
while(p1!=null){
if(p2==null){
p2=head;
}else{
p2=p2.next;
}
p1=p1.next;
}
return p2;
}
}
第二次做:
public class Solution {
public ListNode FindKthToTail(ListNode head,int k) {
if(head==null){
return null;
}
ListNode p1 = head;
for(int i=0; i<k; i++){
if(p1==null){
return null;
}
p1=p1.next;
}
ListNode p2 = head;
while(p1!=null){
p1 = p1.next;
p2 = p2.next;
}
return p2;
}
}