package com.liujinghe.app;
import java.util.ArrayList;
import java.util.Arrays;
public class Demo {
public static void main(String[] args) {
int [] arr={1,3,32,4,43,5,435,6,45,6,5,67,345324,32} ;
int [] arr2={1,3,32,4,43,5,435,6,45,6,5,67,345324,32} ;
sort1(arr);
sort2(arr2);
System.out.println(Arrays.toString(arr));
System.out.println(Arrays.toString(arr2));
}
//冒泡排序
/**
* 方法分析
* 方法名:sort1
* 参数:int类型数组
* 返回值:int类型数据
*/
public static int [] sort1(int [] arr){
//选择排序是两两比较,如果前面的数据大,那么交换位置
for (int i = 0; i < arr.length - 1; i++) {
//-1是因为数组长度为leng,索引取不到lang
for (int j = 0; j < arr.length - 1 - i; j++) {
//-i是因为每次循环,都有一个最大值排到最后面
if(arr[j]>arr[j+1]){
int temp=arr[j];
arr[j]=arr[j+1];
arr[j+1]=temp;
}
}
}
return arr;
}
//选择排序
/**
* 方法分析
* 方法名:sort2
* 参数:int类型数组
* 返回值:int类型数组
*/
public static int [] sort2(int [] arr){
//选择排序是找最小值索引,与第一个数据交换
for (int i = 0; i < arr.length; i++) {
int minIndex=i;
for (int j = i; j < arr.length; j++) {
//j=i是因为每次循环,都有一个最小值排到最前面
if(arr[j]<arr[minIndex]){
minIndex=j;
}
}
int temp=arr[i];
arr[i]=arr[minIndex];
arr[minIndex]=temp;
}
return arr;
}
}
冒泡排序动态图
选择排序动态图