0

ユーザーが値を入力するたびに Insertion Sort コードを実行するにはどうすればよいですか。私はプログラミングについてあまり知識がないことに注意してください。そのため、例を示したり、すぐに使用できるコードを示していただければ幸いです。

    Console.Write("How long the Insertion sort list should be?: ");
    var countString = Console.ReadLine();
    int count = Convert.ToInt32(countString);
    int[] data = new int[count];

    for (int i = 0; i < count; i++)
    {

        var input = Console.ReadLine();
        data[i] = Convert.ToInt32(input);

        Console.WriteLine(input); // << HERE THE SORTING SHOULD HAPPEN AFTER EACH VALUE THAT I ADD.

    }


    int j = 0;
    int help = 0;

    for (int i = 1; i < data.Length; i++) 
    {
        j = i;
        help = data[i];

        while (j > 0 && help < data[j - 1])
        {
            data[j] = data[j - 1];
            j--;
        }

        data[j] = help;
    }

    foreach (var i in data)
    {
        Console.Write("{0}, ", i);
    }
}
4

1 に答える 1

0

コードを視覚的に 2 つの部分に分割できます。最初の部分は、値を挿入するためのものです。2 番目の部分は、これらの値を並べ替えます。そのため、2 番目の部分を切り取って、並べ替えが必要な場所に挿入する必要があります。この場所が見つかることを願っています ;)

iまた、秒forを別のものに置き換える必要があると考えてください。k

幸運を

于 2013-10-28T17:35:33.720 に答える