当前位置: 代码迷 >> C语言 >> 单链表的查找算法?
  详细解决方案

单链表的查找算法?

热度:314   发布时间:2006-10-15 22:58:10.0
单链表的查找算法?
ListNode* GetNode(LinkList head,int i)
{//在带头结点的单链表head中查找第i个结点,若找到(0≤i≤n),
//则返回该结点的存储位置,否则返回NULL。
int j;
ListNode *p;
p=head;j=0;//从头结点开始扫描
while(p->next&&j<i){//顺指针向后扫描,直到p->next为NULL或i=j为止
p=p->next;
j++;
}
if(i==j)
return p;//找到了第i个结点
else return NULL;//当i<0或i>0时,找不到第i个结点
}
这是一个链表的查找算法,但是它的返回值是个指针,这点不太懂?为什么返回指针?
搜索更多相关的解决方案: 单链  结点  算法  head  next  

----------------解决方案--------------------------------------------------------
ListNode* GetNode(LinkList head,int i)函数返回的类型就是指针类型ListNode*
----------------解决方案--------------------------------------------------------
       明白了.
----------------解决方案--------------------------------------------------------
  相关解决方案