#include<iostream>
using namespace std;
struct ListNode {
int value;
ListNode* next;
};
ListNode* Find(ListNode* head,int n){
ListNode *p=head, *q=head;
int num = 0;
if (head == NULL||n==0) return NULL;
while (q->next&&num<n-1){
q = q->next;
num++;
}
if (num < n - 1) return NULL;
while (q->next){
q = q->next;
p = p->next;
}
return p;
}
int main(){
ListNode *l=new ListNode();
l->value = 3;
l->next = new ListNode();
l->next->value = 2;
l->next->next = new ListNode();
l->next->next->value = 1;
cout << Find(l, 1)->value << endl;
cout<<Find(l, 2)->value<<endl;
cout<<Find(l, 3)->value<<endl;
cout<<(Find(l, 4)!=NULL)<<endl;
return 0;
}
剑指offer22
最新推荐文章于 2022-08-25 00:53:49 发布