c++ - C++中链表的长度

标签 c++

我有一个如下所示的结构 A:

struct A 
            {
            int v; 
            double weight;
            A* next;
            A(int x, double w, A* t){
                v=x;
                next = t;
                weight = w;
            }

        };

我还通过以下方式将这些链表保存在一个 vector 中:

typedef A* link; 
        vector<link>adj; 

现在,我想求出 adj[i] 的链表的长度。我知道这就像遍历链表并递增计数以获得链表的长度。出于某种原因,我没有得到我想要的。我想知道,是否有人可以给我一些指示。谢谢

最佳答案

有点像,

int count = 0;
link* node = adj[i];

while(node != 0) {
    node = node->next;
    count ++;
}

关于c++ - C++中链表的长度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29294354/

相关文章:

c++ - 与标准 C++ 相比,C++/CLI(以前称为 "Managed C++")有哪些优势?

c++ - C++ 中的 "Include as"

c++ - 我可以使表达式constexpr吗?

c++ - 如何在 iOS 上的 QT/QML 中使用剪贴板

c++ - 将二维数组传递给 C 和 C++ 中的函数

c++ - QLineEdit 的背景图像

c++ - Qt5如何将DATA_BLOB转换为QByteArray

c++ - 使用参数包分配具有可变参数的函数指针

c++ - 为什么 std::list::reverse 有 O(n) 复杂度?

c++ - 将单独线程中的 DLL 中的 std::cout 重定向到 QTextEdit