编写带头结点的单链表中统计结点个数的算法。
时间: 2024-03-12 08:48:50 浏览: 113
3-2 试编写一个算法,在带表头结点的单链表中寻找第i个结点.doc
好的,以下是带头结点的单链表中统计结点个数的算法。
```
int countNodes(Node* head) {
int count = 0;
Node* current = head->next; // 从头结点的下一个结点开始遍历
while (current != NULL) {
count++;
current = current->next;
}
return count;
}
```
其中,`Node`是单链表中的结点,包含一个数据成员和一个指向下一个结点的指针成员。`head`是指向链表头结点的指针,该头结点不存储数据,只用于方便操作链表。算法中使用一个计数器`count`,初始化为0,从头结点的下一个结点开始遍历链表,每遍历到一个结点就将计数器加1,直到遍历到链表末尾。最后返回计数器的值即为链表中的结点个数。
阅读全文