编写Java程序实现对数组排序,{19,39,23,67,45}从小到大排序
时间: 2023-09-18 08:13:07 浏览: 116
好的,以下是Java程序实现对数组排序,具体使用的是冒泡排序,从小到大排序:
```java
public class ArraySort {
public static void main(String[] args) {
int[] arr = {19, 39, 23, 67, 45};
// 冒泡排序
for (int i = 0; i < arr.length - 1; i++) {
for (int j = 0; j < arr.length - 1 - i; j++) {
if (arr[j] > arr[j + 1]) {
int temp = arr[j];
arr[j] = arr[j + 1];
arr[j + 1] = temp;
}
}
}
// 输出排序后的数组
for (int i : arr) {
System.out.print(i + " ");
}
}
}
```
输出结果为:`19 23 39 45 67`。
相关问题
用java编写程序实现对数组排序{19,39,23,67,45}可从小到大排序
以下是一个使用Java实现对给定数组按从小到大排序的示例:
```java
public class ArraySort {
public static void main(String[] args) {
int[] arr = {19, 39, 23, 67, 45};
// 冒泡排序
for (int i = 0; i < arr.length - 1; i++) {
for (int j = 0; j < arr.length - i - 1; j++) {
if (arr[j] > arr[j + 1]) {
int temp = arr[j];
arr[j] = arr[j + 1];
arr[j + 1] = temp;
}
}
}
// 输出排序结果
System.out.print("排序结果:");
for (int i = 0; i < arr.length; i++) {
System.out.print(arr[i] + " ");
}
}
}
```
以上示例代码中,我们使用了冒泡排序算法对给定数组进行排序。冒泡排序算法的基本思想是,依次比较相邻的两个元素,如果它们的顺序不对就交换它们的位置。这样,每一轮比较都会将当前未排序部分的最大元素移动到末尾,直到所有元素都排好序为止。
java编写程序实现对数组排序,{19,39,23,67,45}可从小到大或从大到小
好的,下面是Java语言实现对数组排序的代码,同样提供冒泡排序和快速排序两种方法。
1. 冒泡排序
从小到大排序的冒泡排序代码如下:
```java
public static void bubbleSortAsc(int[] arr) {
int n = arr.length;
for (int i = 0; i < n; i++) {
for (int j = 0; j < n-i-1; j++) {
if (arr[j] > arr[j+1]) {
int temp = arr[j];
arr[j] = arr[j+1];
arr[j+1] = temp;
}
}
}
}
```
从大到小排序的冒泡排序代码如下:
```java
public static void bubbleSortDesc(int[] arr) {
int n = arr.length;
for (int i = 0; i < n; i++) {
for (int j = 0; j < n-i-1; j++) {
if (arr[j] < arr[j+1]) {
int temp = arr[j];
arr[j] = arr[j+1];
arr[j+1] = temp;
}
}
}
}
```
2. 快速排序
从小到大排序的快速排序代码如下:
```java
public static void quickSortAsc(int[] arr, int left, int right) {
if (left >= right) return;
int pivot = arr[left];
int i = left, j = right;
while (i < j) {
while (i < j && arr[j] >= pivot) j--;
if (i < j) arr[i++] = arr[j];
while (i < j && arr[i] < pivot) i++;
if (i < j) arr[j--] = arr[i];
}
arr[i] = pivot;
quickSortAsc(arr, left, i-1);
quickSortAsc(arr, i+1, right);
}
```
从大到小排序的快速排序代码如下:
```java
public static void quickSortDesc(int[] arr, int left, int right) {
if (left >= right) return;
int pivot = arr[left];
int i = left, j = right;
while (i < j) {
while (i < j && arr[j] <= pivot) j--;
if (i < j) arr[i++] = arr[j];
while (i < j && arr[i] > pivot) i++;
if (i < j) arr[j--] = arr[i];
}
arr[i] = pivot;
quickSortDesc(arr, left, i-1);
quickSortDesc(arr, i+1, right);
}
```
你可以调用这些函数来对数组进行排序。例如,对于数组`{19, 39, 23, 67, 45}`,你可以使用以下代码进行排序:
```java
int[] arr = {19, 39, 23, 67, 45};
// 从小到大排序
bubbleSortAsc(arr);
System.out.println("从小到大排序结果:" + Arrays.toString(arr));
// 从大到小排序
quickSortDesc(arr, 0, arr.length-1);
System.out.println("从大到小排序结果:" + Arrays.toString(arr));
```
输出结果如下:
```
从小到大排序结果:[19, 23, 39, 45, 67]
从大到小排序结果:[67, 45, 39, 23, 19]
```
阅读全文