单链表按位查找
1. current 从首元结点开始
带头结点时,头结点不算第 1 个数据结点。查找第 index 个元素,先让 current 指向 head->next。
头next
a1next
a2next
current, position = 1
LNode *current = head->next;
int position = 1;
2. 未到目标就继续后移
每走过一个结点,指针和位序同步更新。若先遇到 NULL,说明位序越界。
头next
a1next
a2next
a3NULL
current, position = 2
while (current != NULL && position < index) {
current = current->next;
position++;
}
3. 返回当前结点
循环结束时,current 要么指向目标结点,要么为 NULL。调用者据此判断查找是否成功。
return current;