リンクリストのインデックスに値を挿入するにはどうすればよいですか?c ++セグメンテーションフォールトエラー

Ninjadogggg

毎回セグメンテーション違反が発生するため、リンクリストで挿入を接続する際に発生するエラーを見つけるのに問題があります。この問題を見つけるために私が何に焦点を当てるべきかについての提案はありがたいです。

bool LinkedList::InsertAtIndex(int value, int index)
{
    if (index < 0)
    {
        return false;
    }
    LinkedListNode* tmp = new LinkedListNode();

    tmp->data = value;

    tmp->next_node = NULL;

    if (index == 0)
    {
        tmp->next_node = head;
        head = tmp;

        return true;
    }
    LinkedListNode* head_ref = head;
    for (int i = 0; i < index - 1; i++)
    {
        head_ref = head_ref->next_node;
        if (i == index - 1)
        {
            break;
        }
    }
    if (head_ref == NULL)
    {
        return false;
    }

    temp->next_node = head_ref->next_node;
    head_ref->next_node = temp;

    return true;
}
Dko

ノードがインデックス0の後に挿入されると、いくつかの問題があると思います。コードスニペットを書き直して、それらのケースを説明しようとしました。

LinkedListNode* prev = head; // Locate node previous to insertion point
for (int i = 0; prev != NULL && i < index; i++)
{
    // Use prev != NULL to make sure the list isn't shorter than the
    // index.

    // Use i < index to check all of 0...index-1 to get insertion 
    // at last index right. For example, in list a,b,c insert d at
    // position 3 (zero-based counting)

    if (i + 1 == index) // First, check to see whether i meets the 
    {                   // index criteria. If yes, break out. prev
        break;          // is set to the right value.
    }
    prev = prev->next_node; // Advance prev to the next node to check
}                           // the next index value.

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

データマトリックスのディメンションをコード行に挿入するにはどうすればよいですか?

分類Dev

インデックスのリストに基づいて値を挿入するにはどうすればよいですか?

分類Dev

セマンティックバージョンをバンプせずに、インクリメンタルファウンドリトランスフォームジョブを非インクリメンタルにビルドするように強制するにはどうすればよいですか?

分類Dev

Pythonでは、ユーザー入力をリスト内のインデックスにリンクするにはどうすればよいですか?

分類Dev

テキストファイルからデータをインポートするときにPythonディクショナリの値をインクリメントするにはどうすればよいですか?

分類Dev

カスタムクリックアンドドラッグを角度で行うときに、デフォルトのカーソルスタイル(テキストセレクター)を無効にするにはどうすればよいですか?

分類Dev

セグメントツリークエリのインデックスを取得するにはどうすればよいですか?

分類Dev

Mac AppStoreのosxアプリケーションにコマンドラインユーティリティをバンドルするにはどうすればよいですか(サンドボックスエンタイトルメントを使用)

分類Dev

ボタンを1回クリックするだけで、テキストボックスの値とdxDatagridの選択したすべての値をデータベースに挿入するにはどうすればよいですか?

分類Dev

私はC言語でリンクリストの末尾にノードを追加しようとするとエラー(コアダンプ)セグメンテーションフォールトを取得しています++

分類Dev

ソリューションエクスプローラーでテキストファイルを作成するにはどうすればよいですか?

分類Dev

オラクルシーケンスの現在の値をインクリメントせずに取得するにはどうすればよいですか?

分類Dev

IShellItemのシステムイメージリストアイコンインデックスを取得するにはどうすればよいですか?

分類Dev

マクロのForステートメント内にSQLクエリを正しく挿入するにはどうすればよいですか?

分類Dev

マクロのForステートメント内にSQLクエリを正しく挿入するにはどうすればよいですか?

分類Dev

オールインワン(Edge / Firefox / Chrome)ブラウザ拡張機能のコンテンツスクリプトにメッセージパッシングコールバックを実装するにはどうすればよいですか?

分類Dev

リモートデスクトップ:フルスクリーンはプライマリモニターの解像度に制限されています。2番目の(大きい)画面でフルスクリーンのrdpセッションを取得するにはどうすればよいですか?

分類Dev

SQL Server 2012のトリガーでセッション値を使用してテーブルに挿入するにはどうすればよいですか?

分類Dev

リフレクションを使用してプライベートメソッドにアクセスするにはどうすればよいですか?

分類Dev

フィルタフィールドのクエリセット値を使用して、djangoでモデルのインスタンスをフィルタリングするにはどうすればよいですか?

分類Dev

Webスクレイピングにバックオフスクリプトを挿入するにはどうすればよいですか

分類Dev

リクエストのトランザクションとは別のデータベーストランザクションでコンテンツアイテムを読み書きするにはどうすればよいですか?

分類Dev

リンクリストに文字列を動的に挿入するにはどうすればよいですか?

分類Dev

関連するシリアライザーのネストされたクエリセットを、関連するモデルインスタンスのサブセットに制限するにはどうすればよいですか?

分類Dev

リストの値を最初のインデックス値から最後のインデックス値まで出力するforまたはwhileループをコーディングするにはどうすればよいですか?

分類Dev

OS X Lionでデフォルトのスクリーンショット名を変更するにはどうすればよいですか?

分類Dev

Eclipse-クラス/メソッドのコメントセクションにテーブルを作成するにはどうすればよいですか?

分類Dev

Djangoテンプレートでカスタムフォームエラーセクションを作成するにはどうすればよいですか?

分類Dev

リスト内の値をインクリメントするにはどうすればよいですか?

Related 関連記事

  1. 1

    データマトリックスのディメンションをコード行に挿入するにはどうすればよいですか?

  2. 2

    インデックスのリストに基づいて値を挿入するにはどうすればよいですか?

  3. 3

    セマンティックバージョンをバンプせずに、インクリメンタルファウンドリトランスフォームジョブを非インクリメンタルにビルドするように強制するにはどうすればよいですか?

  4. 4

    Pythonでは、ユーザー入力をリスト内のインデックスにリンクするにはどうすればよいですか?

  5. 5

    テキストファイルからデータをインポートするときにPythonディクショナリの値をインクリメントするにはどうすればよいですか?

  6. 6

    カスタムクリックアンドドラッグを角度で行うときに、デフォルトのカーソルスタイル(テキストセレクター)を無効にするにはどうすればよいですか?

  7. 7

    セグメントツリークエリのインデックスを取得するにはどうすればよいですか?

  8. 8

    Mac AppStoreのosxアプリケーションにコマンドラインユーティリティをバンドルするにはどうすればよいですか(サンドボックスエンタイトルメントを使用)

  9. 9

    ボタンを1回クリックするだけで、テキストボックスの値とdxDatagridの選択したすべての値をデータベースに挿入するにはどうすればよいですか?

  10. 10

    私はC言語でリンクリストの末尾にノードを追加しようとするとエラー(コアダンプ)セグメンテーションフォールトを取得しています++

  11. 11

    ソリューションエクスプローラーでテキストファイルを作成するにはどうすればよいですか?

  12. 12

    オラクルシーケンスの現在の値をインクリメントせずに取得するにはどうすればよいですか?

  13. 13

    IShellItemのシステムイメージリストアイコンインデックスを取得するにはどうすればよいですか?

  14. 14

    マクロのForステートメント内にSQLクエリを正しく挿入するにはどうすればよいですか?

  15. 15

    マクロのForステートメント内にSQLクエリを正しく挿入するにはどうすればよいですか?

  16. 16

    オールインワン(Edge / Firefox / Chrome)ブラウザ拡張機能のコンテンツスクリプトにメッセージパッシングコールバックを実装するにはどうすればよいですか?

  17. 17

    リモートデスクトップ:フルスクリーンはプライマリモニターの解像度に制限されています。2番目の(大きい)画面でフルスクリーンのrdpセッションを取得するにはどうすればよいですか?

  18. 18

    SQL Server 2012のトリガーでセッション値を使用してテーブルに挿入するにはどうすればよいですか?

  19. 19

    リフレクションを使用してプライベートメソッドにアクセスするにはどうすればよいですか?

  20. 20

    フィルタフィールドのクエリセット値を使用して、djangoでモデルのインスタンスをフィルタリングするにはどうすればよいですか?

  21. 21

    Webスクレイピングにバックオフスクリプトを挿入するにはどうすればよいですか

  22. 22

    リクエストのトランザクションとは別のデータベーストランザクションでコンテンツアイテムを読み書きするにはどうすればよいですか?

  23. 23

    リンクリストに文字列を動的に挿入するにはどうすればよいですか?

  24. 24

    関連するシリアライザーのネストされたクエリセットを、関連するモデルインスタンスのサブセットに制限するにはどうすればよいですか?

  25. 25

    リストの値を最初のインデックス値から最後のインデックス値まで出力するforまたはwhileループをコーディングするにはどうすればよいですか?

  26. 26

    OS X Lionでデフォルトのスクリーンショット名を変更するにはどうすればよいですか?

  27. 27

    Eclipse-クラス/メソッドのコメントセクションにテーブルを作成するにはどうすればよいですか?

  28. 28

    Djangoテンプレートでカスタムフォームエラーセクションを作成するにはどうすればよいですか?

  29. 29

    リスト内の値をインクリメントするにはどうすればよいですか?

ホットタグ

アーカイブ