java選擇排序方法
阿新 • • 發佈:2019-02-07
import java.util.Arrays;
public class Xuanze
{
public static void main(String[] args)
{
int[] arr={23,12,43,21,45,13,32};
System.out.println("排序前的:"+Arrays.toString(arr));
for(int i=0;i<arr.length;i++)//外迴圈找出最小值並進行交換
{
int minindex=i;//當下標為0,1,2,3,....時依次進行下面的迴圈體
for(int j=i+1;j<arr.length;j++)//內迴圈找出最小值的下標進行交換
{
if(arr[minindex]>arr[j])//如果前面的數比後面的一個大
{
minindex=j;//則將這兩個數的下標進行交換,不是數進行交換
}
}
if(minindex!=i)//如果最小的下標就是最小值就不需要進行交換,如果不是,則進行
//下面的交換
{
int temp=arr[i];
arr[i]=arr[minindex];
arr[minindex]=temp;
}
}
System.out.println("排序後的:"+Arrays.toString(arr));
}
}
public class Xuanze
{
public static void main(String[] args)
{
int[] arr={23,12,43,21,45,13,32};
System.out.println("排序前的:"+Arrays.toString(arr));
for(int i=0;i<arr.length;i++)//外迴圈找出最小值並進行交換
{
int minindex=i;//當下標為0,1,2,3,....時依次進行下面的迴圈體
for(int j=i+1;j<arr.length;j++)//內迴圈找出最小值的下標進行交換
{
if(arr[minindex]>arr[j])//如果前面的數比後面的一個大
{
minindex=j;//則將這兩個數的下標進行交換,不是數進行交換
}
}
if(minindex!=i)//如果最小的下標就是最小值就不需要進行交換,如果不是,則進行
//下面的交換
{
int temp=arr[i];
arr[i]=arr[minindex];
arr[minindex]=temp;
}
}
System.out.println("排序後的:"+Arrays.toString(arr));
}
}