シンプルな方法でシングルリンクリストのノード数をカウントするC言語関数


方法1: イテレーションを使用したカウント この方法では、リンクリストをイテレーションしながらノードの数をカウントします。ポインタを使用してリスト内を移動し、各ノードの数をカウントします。

int countNodes(struct Node* head) {
    int count = 0;
    struct Node* current = head;
    while (current != NULL) {
        count++;
        current = current->next;
    }
    return count;
}

方法2: 再帰を使用したカウント この方法では、再帰を使用してリンクリスト内のノードの数をカウントします。再帰関数を呼び出し、現在のノードの次のノードに移動します。

int countNodesRecursive(struct Node* head) {
    if (head == NULL) {
        return 0;
    }
    return 1 + countNodesRecursive(head->next);
}

これらの方法は、シングルリンクリスト内のノードの数をカウントするためのシンプルな手法です。他にもさまざまな方法がありますが、ここでは基本的な方法を紹介しました。これらの例を使用して、自分のプログラムに組み込むことができます。

以上が、C言語を使用してシングルリンクリスト内のノードの数をカウントする方法についての解説です。この記事を参考にして、自分のプログラムに適した方法を選択してください。