我试图在Java中反转一个int数组.
此方法不会反转数组.
for(int i = 0; i < validData.length; i++)
{
int temp = validData[i];
validData[i] = validData[validData.length - i - 1];
validData[validData.length - i - 1] = temp;
}
Run Code Online (Sandbox Code Playgroud)
这有什么问题?
我正在尝试使用以下代码在Java中按降序对数组进行排序:
for(int i = 0; i < arr.length; i++) {
Comparator comparator = Collections.reverseOrder();
Arrays.sort(arr,comparator);
}
Run Code Online (Sandbox Code Playgroud)
但我得到这个错误:
Arrays类型中的方法sort(int [])不适用于参数(int [],Comparator)
我编写了代码来反转具有时间复杂度的数组:O(n).
有更快的方法吗?
我的代码:
void reverseArray(int arr[], int start, int end){
int temp;
if(start >= end)
return;
temp = arr[start];
arr[start] = arr[end];
arr[end] = temp;
reverseArray(arr, start+1, end-1);
}
Run Code Online (Sandbox Code Playgroud)