アイム渡された配列がソートされているかどうかをチェックしてみてください:なぜarray = array1はarray1 = arrayと同じですか?
public static boolean isSorted(int[] list){
boolean isSorted = true;
int[] arr = list;
selectionSort(arr);
for (int i = 0; i < list.length; i++) {
if (arr[i] != list[i]){
isSorted = false;
break;
}
}
return isSorted;
}
私は配列list
に合格し、リストへの配列arr
を等しくするか、何が起こったことは、アレイlist
は、ソート後の配列arr
に等しくなりましたさ。
そのためのJavaルールは何ですか? arr
をlist
から分離するにはどうすればよいですか?
'int [] arr = list;'は配列をコピーしません。 'int [] arr = list.clone();または' int [] arr = Arrays.copyOf(arr、0、arr.length); 'を使う必要があります。 –