b站学习,自写练习
思想:
比起冒泡排序,它不是冒泡排序那种通过交换进行排序,他是每次循环找出最小的哪一个,然后将最小的值赋给arr[0],依次下去,将混乱的序列数组成一个有序的数组。
时间复杂度:O(n2)
import java.util.Arrays;
public class Sort {
public static void main(String[] args) {
int[] arr = {19,91,8,17,1,9,5,99,9,56,2,94,56,22};
// quickSort(arr, 0, arr.length - 1);
selectSort(arr);
System.out.println(Arrays.toString(arr));
}
public static void selectSort(int[] arr)
{
for(int i=0;i<arr.length-1;i++)
{
for(int j=i+1;j<arr.length;j++)
{
int min=i;
if(arr[min]>arr[j])
{
min=j;
}
if(i!=min)
{
int temp=arr[i];
arr[i]=arr[min];
arr[min]=temp;
}
}
}
}