只提供头结点的指针head,成功则输出结点的值并返回1,失败则返回0;
typedef struct LNode{
int data;
struct LNode *next;
}LNode,*LinkList;
int length(Head)//求出链表的长度
{
int num=0;
LNode *p=L->next;
while(p!=NULL)
{
num++;
p=p->next;
}
return num;
}
int Find(LinkList Head,int k)
{//将问题转化为求正数第n-k+1个结点的值
int n=length(Head);
int j=1,i=n-k+1;
LNode *p=L->next;
if(i<1)
return 0;
while(p&&j<i)
{
p=p->next;
j++;
}
printf("%d",p->data);
return 1;
}