kuuga 发表于 2016-3-30 20:29:14

17节 循环链表的查找

/*返回结点所在位置*/
int ds_search(node *pNode, int elem)
{
    node *target;
    int i = 1;

    for(target = pNode; target->data != elem && target->next != pNode; ++i)
        {
                target = target->next;
        }
       
        if(target->next == pNode) /*表中不存在该元素*/
      return 0;
    else
      return i;
}
如果要查找的元素恰好是最后一个,那返回值就会是0
,这应该算错了了吧,我认为应该把target->next==pNode改成targrt->data!=elem,这样对吗

geekerr 发表于 2017-2-11 13:51:52

对的

geekerr 发表于 2017-2-11 13:52:22

对的{:10_256:}
页: [1]
查看完整版本: 17节 循环链表的查找