java对数组选择排序
时间: 2024-09-13 18:07:25 浏览: 35
Java对数组实现选择排序算法的实例详解
在Java中,选择排序是一种简单直观的排序算法,它的工作原理是每一次从待排序的数据元素中选出最小(或最大)的一个元素,存放在序列的起始位置,直到全部待排序的数据元素排完。对于数组的选择排序过程可以分为以下几个步骤:
1. **遍历所有数组元素**:找到当前未排序部分中的最小值(或最大值),将其索引记录下来。
2. **交换**:将找到的最小值(或最大值)与未排序部分的第一个元素交换位置。
3. **重复**:将已排序部分的最后一个元素移动到已排序部分的开头,然后再次从剩余未排序部分寻找最小值,并重复上述步骤,直到整个数组排序完成。
选择排序的时间复杂度是O(n^2),其中n是数组长度。由于其效率较低,一般只适用于小规模数据或教育用途演示。以下是简单的选择排序Java代码示例:
```java
void selectionSort(int[] arr) {
int n = arr.length;
for (int i = 0; i < n - 1; i++) {
// 找到剩余部分的最小值
int minIndex = i;
for (int j = i + 1; j < n; j++) {
if (arr[j] < arr[minIndex]) {
minIndex = j;
}
}
// 将找到的最小值与当前位置交换
int temp = arr[minIndex];
arr[minIndex] = arr[i];
arr[i] = temp;
}
}
```
阅读全文