//选择排序(08/26),个人写
public void selectsort(int[] array){
if(array==null||array.length==0)
return;
for(int i=0;i<array.length;i++){
for(int j=i+1;j<array.length;j++){
if(array[j]<array[i]){
array[i]^=array[j];
array[j]^=array[i];
array[i]^=array[j];
}
}
}
}
public void selectsort2(int[] array){
if(array==null||array.length==0)
return;
for(int i=0;i<array.length;i++){
int min_value=array[i];
for(int j=i+1;j<array.length;j++){
if(array[j]<min_value){
min_value=array[j];
}
}
array[i]=min_value;
}
}
另一部分代码同样是选择排序,不过是参考完成,如下:
package sort_book_datastruction;
import java.util.Scanner;
public class SelectSort {
public void selectSort(int[] array){
int length = array.length;
for(int i = 1;i<length;i++){
int minIndex = i - 1;
for(int j = i;j<length;j++){
if(array[j]<array[minIndex])
{
//min = array[j];
minIndex = j;
}
}
if(minIndex!=(i-1)){
int temp = array[i-1];
array[i-1] = array[minIndex];
array[minIndex] = temp;
}
}
}
public void showArray(int[] array){
int length= array.length;
for(int i =0;i<length;i++){
System.out.print(" "+array[i]);
}
}
public static void main(String[] args) {
// TODO Auto-generated method stub
System.out.print("输入数组大小:");
int num = 0;
Scanner sc = new Scanner(System.in);
if(sc.hasNextInt()){
num = sc.nextInt();
}
int[] array = new int[num];
System.out.println("输入数组数据:");
for(int i =0;i<num;i++){
array[i] = sc.nextInt();
//System.out.print(" "+array[i]);
}
// int[] array={3,1,5,7,2,4,9,6};
SelectSort ss = new SelectSort();
ss.selectSort(array);
//ss.showArray(array);
for(int a:array)
System.out.print(" "+a);
}
}