单链表按位查找

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;