搜索项目链表C(队列)

Sha*_*ars 0 c queue traversal linked-list

我有两个结构名称*head和*tail.

我使用head作为链表的起点和尾部的结尾.

假设我有一个包含任意数量元素的链表

typedef struct queue
{
    int stuff;
    struct queue *nextNode;
}q;
Run Code Online (Sandbox Code Playgroud)

在我的一个节点中,stuff = 164(这是假设的)

我如何通过链接列表搜索164?

谢谢!

小智 5

抓住指向链表头部的指针.假设列表中的最后一项标记为其nextNode指针NULL,您可以逐个遍历列表:

struct queue *tmp = head;
while (tmp != NULL) {
    if (tmp->stuff == 164) {
        // found it!
        break;
    }
    tmp = tmp->nextNode;
}
Run Code Online (Sandbox Code Playgroud)