按值查找——根据知道数据获取该数据所在的位置(地址)
从首元结点一次往后找,从第一个开始找,直到找到该元素或者为空的时候结束
- 从第一个结点起,依次和e相比较
- 如果找到一个其值与e相等的数据元素,则返回其在链表中的“位置”或”地址“
- 如果查遍整个链表都没有找到其值和e相等的元素,则返回0或“NULL”
返回地址的算法描述
Lnode *LocateElem_L(LinkList L,Elemtype e)
{
//在线性表中查找值为e的数据元素
//找到,则返回L中值为e的数据元素的地址,查找失败则返回NULL
LinkList p;//定义一个p指针
p=L->next;
while(p && p->data!=e)
{
p=p->next;
return p;
}
}
while
中条件解释
p
:如果p指针不为空的话,则进行循环,指向下一个指针域,接着寻找
data!=e
如果数据不等于e的话,进行循环接着寻找