在C++中有没有能求链表长度的工具
时间: 2024-09-18 08:15:41 浏览: 49
在C++中,链表结构通常会包含一个指向下一个节点的指针,但是标准库并没有直接提供计算链表长度的工具函数。然而,你可以通过遍历链表的方式来获取其长度。下面是一个简单的示例:
```cpp
#include <iostream>
// 链表节点定义
struct ListNode {
int val; // 节点值
ListNode* next; // 指向下一个节点的指针
};
// 计算链表长度的函数
size_t getLinkedListLength(ListNode* head) {
if (head == nullptr) {
return 0;
}
size_t length = 1;
ListNode* current = head;
while (current->next != nullptr) {
length++;
current = current->next;
}
return length;
}
int main() {
ListNode* list = /* 初始化你的链表 */;
std::cout << "链表的长度是: " << getLinkedListLength(list) << std::endl;
return 0;
}
```
在这个例子中,`getLinkedListLength` 函数接收链表头节点的指针,并通过迭代遍历直到找到空节点(`nullptr`),从而计算出链表的长度。
阅读全文