整列挿入[JAVA]
挿入位置合わせInsertion Sort
昇順ソート、降順ソートが必要な場合は、「挿入ソート」を使用します.
ただし、ソートが必要な数が少ない場合に便利です.
例えば、a b c d e fがある場合、
2番目のbを基準として、bの前のaと値を比較する.
このときaの値が大きいとbとaの位置が変わります.
b a c d e f
今回は3番目のcとaの値を比較します.
このように所定の位置の値を順番に比較すると、昇順、降順のソートが可能となる.
昇順ソート、降順ソートが必要な場合は、「挿入ソート」を使用します.
ただし、ソートが必要な数が少ない場合に便利です.
例えば、a b c d e fがある場合、
2番目のbを基準として、bの前のaと値を比較する.
このときaの値が大きいとbとaの位置が変わります.
b a c d e f
今回は3番目のcとaの値を比較します.
このように所定の位置の値を順番に比較すると、昇順、降順のソートが可能となる.
public void insetSort(){
int i;
int j;
int numKey;
int playerNoKey;
for(i = 1; i < sumOfDice.length; i++){
numKey = sumOfDice[i];
playerNoKey = playerArr[i];
for(j = i - 1; (j != -1) && (numKey < sumOfDice[j]); j--){
sumOfDice[j + 1] = sumOfDice[j]; // 오른쪽으로 밀어내기
playerArr[j + 1] = playerArr[j]; // 오른쪽으로 밀어내기
}
// for(비교할 대상; 기준)
sumOfDice[j + 1] = numKey; // 기준값 저장
playerArr[j + 1] = playerNoKey; // 기준값 저장
}
}
Reference
この問題について(整列挿入[JAVA]), 我々は、より多くの情報をここで見つけました https://velog.io/@s_keyyy/JAVA-삽입정렬テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol