JAVA言語による選択ソート法
4208 ワード
1、思想
1.配列の最小要素を見つける2.配列の最初の要素と位置を交換する(最初の要素が最小要素である場合、それは自分と交換する).残りの要素の中で最小の要素を見つけ、配列の2番目の要素と位置を交換します.4.配列全体を並べ替えるまで往復する
2、特徴
1.運転時間は入力に関係なく2.データ移動が最小
3.アルゴリズム時間複雑度
O(n2)
4、コード
1.配列の最小要素を見つける2.配列の最初の要素と位置を交換する(最初の要素が最小要素である場合、それは自分と交換する).残りの要素の中で最小の要素を見つけ、配列の2番目の要素と位置を交換します.4.配列全体を並べ替えるまで往復する
2、特徴
1.運転時間は入力に関係なく2.データ移動が最小
3.アルゴリズム時間複雑度
O(n2)
4、コード
public int[] sort (int[] sourcearry) {
//
int[] arr = Arrays.copyOf(sourcearry, sourcearry.length);
// N-1
for(int i=0;i<arr.length-1;i++) {
int min = i;
// N-i
for(int j=i+1;j<arr.length;j++) {
if(arr[j]<arr[min]) {
//
min = j;
}
}
// i
if(i!=min) {
int tmp = arr[i];
arr[i] = arr[min];
arr[min] = tmp;
}
}
return arr;
}