给以下数组做个排序{10,21,5,101,99} 分别从大到小、从小到大输出 用java
时间: 2023-08-31 22:28:39 浏览: 146
将数组元素按照从小到大的顺序排列
3星 · 编辑精心推荐
### 回答1:
可以使用Java内置的Arrays类来对数组进行排序,具体实现如下:
从大到小排序输出:
```
int[] arr = {10,21,5,101,99};
Arrays.sort(arr);
for(int i = arr.length - 1; i >= 0; i--){
System.out.print(arr[i] + " ");
}
```
从小到大排序输出:
```
int[] arr = {10,21,5,101,99};
Arrays.sort(arr);
for(int i = 0; i < arr.length; i++){
System.out.print(arr[i] + " ");
}
```
运行结果:
从大到小排序输出:`101 99 21 10 5`
从小到大排序输出:`5 10 21 99 101`
### 回答2:
从大到小排序(降序):首先将数组{10,21,5,101,99}复制到一个新的数组中,然后使用冒泡排序算法进行排序,每次比较相邻的两个元素,如果前一个元素比后一个元素小,则交换它们的位置,这样一趟下来,最大的元素就会沉到数组末尾。重复这个过程,直到整个数组都被排序。
Java代码如下:
```java
public class Main {
public static void main(String[] args) {
int[] arr = {10, 21, 5, 101, 99};
// 从大到小排序
int[] descendingArr = arr.clone();
for (int i = 0; i < descendingArr.length - 1; i++) {
for (int j = 0; j < descendingArr.length - i - 1; j++) {
if (descendingArr[j] < descendingArr[j + 1]) {
int temp = descendingArr[j];
descendingArr[j] = descendingArr[j + 1];
descendingArr[j + 1] = temp;
}
}
}
// 从小到大排序
int[] ascendingArr = arr.clone();
Arrays.sort(ascendingArr);
// 输出结果
System.out.println("从大到小排序:");
for (int num : descendingArr) {
System.out.print(num + " ");
}
System.out.println();
System.out.println("从小到大排序:");
for (int num : ascendingArr) {
System.out.print(num + " ");
}
}
}
```
输出结果:
从大到小排序:
101 99 21 10 5
从小到大排序:
5 10 21 99 101
### 回答3:
从大到小输出:
```java
import java.util.Arrays;
public class ArraySort {
public static void main(String[] args) {
int[] array = {10, 21, 5, 101, 99};
Arrays.sort(array);
for (int i = array.length - 1; i >= 0; i--) {
System.out.print(array[i] + " ");
}
}
}
```
从小到大输出:
```java
import java.util.Arrays;
public class ArraySort {
public static void main(String[] args) {
int[] array = {10, 21, 5, 101, 99};
Arrays.sort(array);
for (int i : array) {
System.out.print(i + " ");
}
}
}
```
以上是使用Java的Arrays.sort()函数进行排序,并分别从大到小和从小到大输出数组元素的示例代码。
阅读全文