目录
这里只探讨了:带头结点的情况
查找分为
按位查找 => GetElem(L,i) 获取表中第i个位置元素的值。
按值查找 => LocateElem(L,e) 在表中查找具有给定关键值的元素。
按位查找
思路: 明确函数返回值类型,代码实质在于定位到第i个结点,而定位操作在单链表按位序增加或者删除都已经实践过!
分析(边界情况):
当 i=0 时,这里将头结点视为了第0个结点。此时执行会跳过while循环,直接执行return p,即返回头结点。
如果 i 的值大于实际长度,while 循环会在 p=NULL 是跳出循环,最终返回的是NULL。结合第一个 if 判断语句可以看出当 i 值不合法的时候,最终返回的值就是一个 NULL。因此别人调用这个基本操作的时候,只需要判断此次返回值是不是等于 NULL 就可以知道这次的按位查找操作是否执行成功!
边界情况是写代码的时候必须考虑到的,要让代码具备健壮性!</