您的位置:首页 > 编程语言

输出链表倒数第k个元素

2014-04-14 17:29 344 查看
原题:输出链表倒数第k个元素

考点:代码鲁棒性(考虑函数定义域)

代码:

#include"linklist.h"
pnode searchk(pnode head,unsigned int k)
{
if(head==NULL||k==0) return NULL;
pnode p=head;
pnode q=NULL;
for(unsigned int i=0;i<k-1;++i)
{
if(p->next!=NULL) p=p->next;
else return NULL;
}
q=head;
while(p->next!=NULL)
{
p=p->next;
q=q->next;
}
return q;
}
int main()
{
crtlist();
prtlist();
pnode p=searchk(head,3);
prtnode(p);
return 0;
}


扩展
1.求链表的中间节点

2.判断一单向链表是否形成环形结构(使用两个指针)

引用

剑指Offer(何海涛著)
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息