查找链表的倒数第K个结点
来源:互联网 发布:淘宝品质高的女装店 编辑:程序博客网 时间:2024/05/17 23:43
#include<stdio.h>
#include <stdlib.h>
struct Node{
int data;
Node *next;
}node;
Node * printt(Node *p1,int n)
{
Node *pp=p1;
Node *q1=pp->next;
for(int j=1;j<=n;j++)
{
pp=pp->next;
}
while(pp->next!=NULL){
q1=q1->next;
pp=pp->next;
}
return q1;
}
Node* FindKthToTail_Solution2(Node* pListHead, unsigned int k)
{
if(pListHead == NULL)
return NULL;
Node *pAhead = pListHead;
Node *pBehind = pListHead->next;
//printf("succeed1\n");
for(unsigned int i = 0; i < k; ++ i)
{
if(pAhead->next != NULL)
pAhead = pAhead->next;
else {
return NULL;
}
}
//printf("succeed2\n");
while(pAhead->next != NULL) {
pAhead = pAhead->next;
pBehind = pBehind->next;
}
printf("succeed3\n");
return pBehind;
}
int main(){
int a[10]={1,2,3,4,5,6,7,8,9,10};
Node *q=(Node *)malloc(sizeof(Node));
Node *first=q;
for(int k=0;k<10;k++){
Node *p=(Node *)malloc(sizeof(Node));
p->data=a[k];
q->next=p;
q=p;
}
q->next=NULL;
int n=0;
scanf("%d",&n);
Node *qq;
qq=FindKthToTail_Solution2(first,n);
printf("succeed4\n");
printf("倒数第%d个数是%d",n,qq->data);
// while(first->next!=NULL){
// printf("%d ",first->next->data);
// first->next=first->next->next;
// }
return 0;
}
- 查找链表的倒数第K个结点
- 关于链表的倒数第k个结点的查找问题--考研题
- 链表倒数第k个结点
- 查找链表中倒数第k个结点
- 查找链表中倒数第k个结点
- 查找链表中倒数第k个结点
- 查找链表中倒数第k个结点
- 查找链表中倒数第 k个结点
- 查找链表中倒数第k个结点
- 查找链表中倒数第k个结点
- 查找链表中倒数第k个结点
- 查找链表中倒数第k个结点
- 查找链表中倒数第k 个结点
- 查找链表中倒数第k个结点
- 查找单链表中倒数第k个结点
- 查找倒数第K个结点
- 查找链表中倒数第k个结点
- 查找链表中倒数第k个结点
- windows API 菜鸟学习之路(三)
- POJ-2588(snakes,抽象成图结构)
- Linux wget命令行的下载工具
- 0.1 连续加 100 次后结果是多少 ???
- Lab1 SavingsBalance
- 查找链表的倒数第K个结点
- jsp 传参乱码 Struts2中action之间传参中文乱码的问题
- Windows 8操作系统中DirectX功能的演变
- TOMCAT 线程数
- jquery移动动画的Demo
- orcle 分页sql
- _declspec(dllexport)与_declspec(dllimport) 浅谈
- Unity iphone 开发答疑汇总
- hello