文章
7
粉丝
0
获赞
0
访问
2.9k
(1)快慢指针思想:
开始时,快慢指针同时指向头节点,rear指针不动,先让fast指针往后遍历到第k个节点;随后,rear指针和fast指针一起往后遍历,直到fast指针指向空时,此时的rear指针正好指向链表中倒数第 k 个位置,查找成功,输出该结点的 data 域的值,并返回 1;否则,只返回 0。
(2)
开始时,快慢指针同时指向头节点,rear指针不动,先让fast指针往后遍历到第k个节点;随后,rear指针和fast指针一起往后遍历,直到fast指针指向空时,此时的rear指针正好指向链表中倒数第 k 个位置,查找成功,输出该结点的 data 域的值,并返回 1;否则,只返回 0。
typedef sturct SeqList{
int data;
SeqList * next;
}SeqList;
int rear_k(SeqList * h,int k){
SeqList * rear=h;
SeqList * fast=h;
while(k--){
if(fast!=null){
fast = fast.next;
}else{
return 0;
}
}
while(1){
if(fast!=null){
fast = fast.next;
rear= rear.rear;
}else{
printf("%d",rear.data)
return 1;
}
}
}
登录后发布评论
暂无评论,来抢沙发