java二维数组的排序
时间: 2023-10-03 14:05:15 浏览: 82
二维数组的排序
要对Java中的二维数组进行排序,可以使用一些常见的排序算法,例如选择排序或插入排序。下面是使用选择排序和插入排序对二维数组进行排序的示例代码:
选择排序:
```java
// 定义选择排序方法
public static void selectionSort(int[][] array) {
// 遍历所有行
for (int i = 0; i < array.length; i++) {
// 遍历当前行的所有元素
for (int j = 0; j < array[i].length - 1; j++) {
// 记录最小元素的下标
int minIndex = j;
// 找到当前行中最小的元素
for (int k = j + 1; k < array[i].length; k++) {
if (array[i][k < array[i][minIndex]) {
minIndex = k;
}
}
// 交换最小元素和当前元素的位置
int temp = array[i][j];
array[i][j = array[i][minIndex];
array[i][minIndex = temp;
}
}
}
// 测试用例
public static void main(String[] args) {
// 初始化二维数组
int[][] array = {
{9, 8, 7},
{6, 5, 4},
{3, 2, 1}
};
// 输出排序前的结果
System.out.println("------排序之前------");
for (int i = 0; i < array.length; i++) {
System.out.println(Arrays.toString(array[i]));
}
System.out.println("-------------------");
// 排序
System.out.println("------正在排序------");
selectionSort(array);
System.out.println("-------------------");
// 输出排序后的结果
System.out.println("------排序之后------");
for (int i = 0; i < array.length; i++) {
System.out.println(Arrays.toString(array[i]));
}
System.out.println("-------------------");
}
```
插入排序:
```java
// 定义插入排序方法
public static void insertionSort(int[][] array) {
// 遍历所有行
for (int i = 0; i < array.length; i++) {
// 遍历当前行的所有元素
for (int j = 1; j < array[i].length; j++) {
// 当前元素
int temp = array[i][j];
int k = j - 1;
// 将大于当前元素的元素后移
while (k >= 0 && array[i][k > temp) {
array[i][k + 1 = array[i][k];
k--;
}
// 插入当前元素
array[i][k + 1 = temp;
}
}
}
// 测试用例
public static void main(String[] args) {
// 初始化二维数组
int[][] array = {
{9, 8, 7},
{6, 5, 4},
{3, 2, 1}
};
// 输出排序前的结果
System.out.println("------排序之前------");
for (int i = 0; i < array.length; i++) {
System.out.println(Arrays.toString(array[i]));
}
System.out.println("-------------------");
// 排序
System.out.println("------正在排序------");
insertionSort(array);
System.out.println("-------------------");
// 输出排序后的结果
System.out.println("------排序之后------");
for (int i = 0; i < array.length; i++) {
System.out.println(Arrays.toString(array[i]));
}
System.out.println("-------------------");
}
```
以上是使用选择排序和插入排序对Java二维数组进行排序的示例代码。你可以根据你的实际需求和喜好选择其中一种排序算法来使用。
阅读全文