1. 程式人生 > >Java排序演算法——直接選擇排序

Java排序演算法——直接選擇排序

直接選擇排序
基本原理:將待排序的元素分為已排序和未排序兩組,依次將未排序的元素值中最小的元素放入已排序的陣列中。
時間效率:O(n2)
空間效率:O(1)
演算法穩定性:不穩定

import java.util.Scanner;

//直接選擇排序(從小到大)
public class Main{
    private void selectSort(int nums[]){
        int length = nums.length;//獲取陣列長度
        for(int i = 0;i<length;i++){
            int minIndex = i;//儲存最小值索引
for(int j = i+1;j<length;j++){ if(nums[minIndex]>nums[j]){ minIndex = j; } } if(minIndex!=i){ int temp = nums[minIndex]; nums[minIndex]=nums[i]; nums[i] = temp; } } System.out
.println(java.util.Arrays.toString(nums));//輸出直接排序陣列 } //測試函式 public static void main(String[] args) { Scanner scanner = new Scanner(System.in);//建立鍵盤掃描物件 int nums[] = new int[10]; for(int i = 0;i<10;i++){ nums[i] = scanner.nextInt(); } scanner.close();//關閉鍵盤掃描物件
Main test = new Main(); test.selectSort(nums);//直接選擇排序 } }