C 言語で連結リストの長さを取得の方法

単一連結リストの長さを求めるためには、リスト全体を走査し、ノードをカウントする必要があります。

例えば、連結リストが次のように定義されているとします。

typedef struct Node{
    int data;  // 存储数据
    struct Node *next; // 指向下一个节点的指针
}Node;

// 定义链表头节点
Node *head = NULL;

以下の関数が単方向連結リストの長さを求めます。

int getLength(){
    int length = 0;
    Node *current = head;  // 从头节点开始遍历
    while(current != NULL){
        length++;
        current = current->next;
    }
    return length;
}

メイン関数でこの関数を呼び出すことで、単一連結リストのリストの長さを取得します。

bannerAds