数据结构与算法之选择排序
生活随笔
收集整理的這篇文章主要介紹了
数据结构与算法之选择排序
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
數(shù)據(jù)結(jié)構(gòu)與算法之選擇排序
目錄
1. 基本介紹
2. 選擇排序思想
選擇排序(select sorting)也是一種簡單的排序方法。它的基本思想是:第一次從arr[0]~arr[n-1]中選取最小值,與arr[0]交換,第二次從arr[1] ~arr[n-1]中選取最小值,與arr[1]交換,第三次從arr[2] ~arr[n-1]中選取最小值,與arr[2]交換,···,第i次從arr[i-1] ~arr[n-1]中選取最小值,與arr[i-1]交換,第n-1次從arr[n-2] ~ arr[n-1]中選取最小值,與arr[n-2]交換,總共通過n-1次,得到一個按排序碼從小到大排列的有序序列。
3. 代碼實現(xiàn)
import java.util.Arrays;public class SelectSort {public static void main(String[] args) {int[] arr= {101,34,119,1};System.out.println("排序前");System.out.println(Arrays.toString(arr));selectSort(arr);System.out.println("排序后");System.out.println(Arrays.toString(arr));}//選擇排序public static void selectSort(int[] arr){//原始的數(shù)據(jù) : 101,34,119,1for (int i = 0; i < arr.length-1; i++) {int minIndex = i;int min = arr[i];//第一輪for (int j = i+1;j < arr.length; j++) {if (min > arr[j]){ //說明假定的最小值,并不是最小min = arr[j]; //重置minminIndex = j; //重置minIndex}}//交換一下,將最小值放在arr[0],即交換arr[minIndex] = arr[i]; //將arr[0]的值放到需要交換的數(shù)的位置arr[i] = min;}} }編譯結(jié)果
備注:80000條數(shù)據(jù)大概3s可以排好。
總結(jié)
以上是生活随笔為你收集整理的数据结构与算法之选择排序的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 数据结构与算法之冒泡排序
- 下一篇: 数据结构与算法之插入排序