5 つの 4 桁の数字の配列を受け取り、最下位桁に基づいて配列をソートするプログラムを作成しようとしています。たとえば、数値が 1234、5432、4567、および 8978 の場合、配列は最初に最後の桁でソートされるため、ネスト ソートは 5432、1224、4597、8978 になります。その後は 1224、5432、8978、 4597. 完全にソートされるまで続きます。
並べ替えのために配列とその一部を表示するためのコードを作成しました。各桁を比較するために必要な方程式の書き方がわかりません。これは、これまでのところ各桁でソートするための私のコードです:
public static void sortByDigit(int[] array, int size)
{
for(int i = 0; i < size; i++)
{
for(int j = 0; j < size; j++)
{
}
for(i = 0; i < size; i++)
{
System.out.println(array[i]);
}
}
}
ネストされた for ループに何を入れればよいかわかりません。モジュラスを使用する必要があると思います。
数字を区切るためにこれを書いただけですが、数字を交換したり比較したりする方法がわかりません。
int first = array[i]%10;
int second = (array[i]%100)/10;
int third = (array[i]%1000)/10;
int fourth = (array[i]%10000)/10;
これは for ループに入りますか?