用java写一段 排序算法中 选择排序算法的代码
时间: 2023-07-18 07:15:55 浏览: 50
好的,以下是使用Java编写的选择排序算法的代码:
```java
public static 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;
}
}
```
这段代码中,我们使用两个嵌套的循环来实现选择排序。外层循环用于遍历整个数组,内层循环则用于查找当前未排序部分中的最小值,并将其与当前未排序部分的第一个元素交换位置。这样,每次外层循环结束时,未排序部分的第一个元素都会是排序后的最小值,直到整个数组都被排序完成。
相关问题
写一段希尔排序算法代码 用java
public class ShellSort {
public static void sort(int[] arr){
int n = arr.length;
int gap = n/2; //设置初始步长
while(gap > 0){
for(int i = gap; i < n; i++){
int temp = arr[i];
int j = i;
while(j >= gap && arr[j - gap] > temp){
arr[j] = arr[j - gap];
j -= gap;
}
arr[j] = temp;
}
gap /= 2; //缩小步长
}
}
}
用java写一段冒泡排序算法
好的,以下是用Java写的冒泡排序算法:
```java
public static void bubbleSort(int[] arr) {
int n = arr.length;
for (int i = 0; i < n - 1; i++) {
for (int j = 0; j < n - i - 1; j++) {
if (arr[j] > arr[j + 1])