[java]選擇排序
//選擇排序(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);
}
}
相關文章
- Java 選擇排序Java排序
- 經典排序之選擇排序(Java)排序Java
- java選擇排序演算法Java排序演算法
- 選擇排序排序
- Java實現二元選擇排序Java排序
- 選擇排序和快速排序排序
- js選擇排序JS排序
- 01選擇排序排序
- 選擇排序法排序
- 排序演算法:選擇排序排序演算法
- 排序演算法__選擇排序排序演算法
- 選擇排序和氣泡排序排序
- 氣泡排序與選擇排序排序
- 桶排序 選擇,插入排序排序
- 陣列選擇排序陣列排序
- C# 選擇排序C#排序
- 簡單選擇排序排序
- 排序——選擇排序小練習(二)排序
- 排序——選擇排序小練習(一)排序
- 選擇排序(python)實現排序Python
- 圖解選擇排序與插入排序圖解排序
- 氣泡排序和選擇排序流程圖排序流程圖
- PHP 排序演算法之選擇排序PHP排序演算法
- Python排序演算法之 選擇排序Python排序演算法
- 排序演算法入門:選擇排序排序演算法
- 氣泡排序和選擇排序詳解排序
- 排序演算法之「選擇排序(SelectionSort) 」排序演算法
- 排序演算法 - 氣泡排序和選擇排序排序演算法
- php實現 氣泡排序,插入排序,選擇排序PHP排序
- 排序演算法入門之「選擇排序」排序演算法
- 常用演算法-選擇排序演算法排序
- 選擇排序的簡單理解排序
- 排序演算法(氣泡排序,選擇排序,插入排序,希爾排序)排序演算法
- 深入淺出的排序演算法-選擇排序排序演算法
- 選擇排序和插入排序(C++實現)排序C++
- 圖解選擇排序及演算法優化(Java實現)圖解排序演算法優化Java
- PHP 常見4種排序 氣泡排序、選擇排序、插入排序、快速排序PHP排序
- 高效理解排序之——選擇排序-含JAVA程式碼(簡潔明瞭,非無腦COPY)排序Java
- 資料結構32:選擇排序資料結構排序