package graph;
import java.util.Arrays;
/*
* 简单排序总结(冒泡、选择、直接插入)
*/
public class Main {
private static void swap(int[] arr,int i,int j){
int temp = arr[i];
arr[i] = arr[j];
arr[j] = temp;
}
//冒泡排序
public static void 冒泡(int[] arr){
int length = arr.length;
//优化
boolean isChange = false;
for(int i=1;i<length;i++){
for(int j=length-1;j>0;j--){
if(arr[j] < arr[j-1]){
swap(arr,j,j-1);
isChange = true;
}
}
if(!isChange){
break;
}
}
}
//选择排序
public static void 选择排序(int[] arr){
int length = arr.length;
int min;
int minIndex;
for(int i=0;i<length-1;i++){
min = arr[i];
minIndex = i;
for(int j=i+1;j<length;j++){
if(arr[j] < min){
min = arr[j];
minIndex = j;
}
}
swap(arr, minIndex, i);
}
}
//插入排序
public static void 插入排序(int[] arr){
int length = arr.length;
int j;
for(int i=1;i<length;i++){
int temp = arr[i];
for(j=i-1;j>=0;j--){
if(arr[j] > temp){
arr[j+1] = arr[j];
}else{
break;
}
}
arr[j+1] = temp;
}
}
public static void main(String[] args) {
int[] arr ={9,6,7,8,4,5,2,3,1};
插入排序(arr);
System.out.println(Arrays.toString(arr));
}
}
java冒泡、简单插入、选择排序
最新推荐文章于 2024-01-18 22:45:54 发布