選擇排序演算法改進隨筆

2021-10-19 05:36:01 字數 496 閱讀 7902

選擇排序演算法改進隨筆

/**這是一道選擇排序改進的小測試,想法,在一次遍歷中直接選取出最大值和最小值,然後分別移動到頭尾,

* 主要難點在於邊界的處理,因為使用了兩次swap,第一次使用swap會造成index變化,第二次使用swap的時候就需要注意。

* 主要是兩種情況:當最大值出現在頭,或者最大值出現在頭,最小值出現在尾時。

*/public class advancedfastalgorithm ;

// int arr=;

for(int i=0;iif(arr[maxindex]}

if(maxindex==i)

if ( maxindex==i && minindex==arr.length-1-i)else

}for (int i : arr)

}public static void swap(intarr,int i,int j)

}

基本排序演算法 選擇排序隨筆

簡介 選擇排序 selection sort 是一種簡單直觀的排序演算法。它的工作原理是 第一次從待排序的資料元素中選出最小 或最大 的乙個元素,存放在序列的起始位置,然後再從剩餘的未排序元素中尋找到最小 大 元素,然後放到已排序的序列的末尾。以此類推,直到全部待排序的資料元素的個數為零。選擇排序是...

排序演算法的比較 選擇及其改進

一 引言 排序是電腦科學中最重要的研究問題之一,它在計算機圖形 計算機輔助設計 機械人 模式識別及統計學等領域具有廣泛的應用。由於它固有的理論上的重要性,2000年它被列為對科學和工程計算的研究與實踐影響最大的10大問題之一。其功能是將乙個資料元素的任意序列重新排列成乙個按關鍵字有序的序列。二 排序...

第十五周演算法改進 選擇排序

問題及 all right reserved 檔名 選擇排序 作者 童宇 完成日期 2014年12月3日 版本號v1.0 問題描述 選擇排序 輸入描述 輸入十個數 程式輸出 輸出排序後的 include using namespace std void select sort int a,int v...