Hark的数据结构与算法练习之简单选择排序
生活随笔
收集整理的這篇文章主要介紹了
Hark的数据结构与算法练习之简单选择排序
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
/** 簡單選擇排序*/
public class SimpleSort {public static void main(String[] args) {int[] arrayData = { 5, 9, 6, 7, 4, 1, 2, 3, 8 };SimpleSortMethod(arrayData);for (int integer : arrayData) {System.out.print(integer);System.out.print(" ");}}/** 時間復雜度 :因為是雙循環求解,所以是o(n^2) * 空間復雜度:使用的臨時空間大小是一個常量,而不是與n有關系,所以空間復雜度是O(1)* 說明:* 其實與冒泡的排序大體是相似的,不同之處是冒泡判斷出兩個數大小后,直接進行交換;而簡單選擇排序是找出最大/最小的數后,再進行排序*/public static void SimpleSortMethod(int[] arrayData) {int maxIndex, i, j,valueTemp;for (i = 0; i < arrayData.length; i++) {maxIndex = i;for (j = i; j < arrayData.length; j++) {if(arrayData[j] > arrayData[maxIndex]){//在這里,只記錄最大值的索引,在后邊那個if中進行數值的交換maxIndex = j;}}if(i!=maxIndex){valueTemp= arrayData[i];arrayData[i]= arrayData[maxIndex];arrayData[maxIndex] = valueTemp;}}}
}
轉載于:https://www.cnblogs.com/hark0623/p/4341684.html
總結
以上是生活随笔為你收集整理的Hark的数据结构与算法练习之简单选择排序的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 一个简单的时间片轮转多道程序内核代码分析
- 下一篇: Xcode6 itunes完美打包api