選擇排序原理:在長度為nd 陣列中,找到位置不適合的元素,直接放入最終合適的位置上,也就是依次在未排序陣列中找到最小元素,,直到最後乙個元素位置(剩下的最後乙個元素n-2最大,無需操作)
每輪從無序陣列中找到的最小資料,依次放入到從data[0]到data[n-2]中;
優點:賦值次數少
缺點:忽略了資料已經在適合的位置上,不需要交換的情況
publicvoid selectionsort(t datas) where t: icomparable
}tamp =mins;
datas[index] =datas[i];
datas[i] =mins;} }
///測試資料:///選擇排序 :從左到右找到資料中最小的數,進行多次,每次最小的分別與第一,第二...個元素進行直接交換,直到最n-2(最後一次不需要排序)
/// public
void selectionsort(t datas) where t: icomparable
}if (least !=i)}}
int selectiondatas = ;排序結果:program.selectionsort(selectiondatas);
debugextension.debugarray(selectiondatas);
燕雙飛情侶 閱讀(
...)
編輯收藏
排序演算法系列 選擇排序
選擇排序可以說是眾多排序演算法中,最基礎 最直觀的乙個演算法了。它的思想十分簡單 遍歷列表,找出最小的乙個數,記下索引 將最小的數新增到新的列表中,同時刪除原陣列中的數 重複第一步 舉個例子 假如現在有乙個無序陣列disorder arr 4,2,19,10,1 和乙個空陣列order arr 第一...
選擇排序 演算法系列
選擇排序 思想 選擇排序的思想也非常簡單,就是從一堆數中選出最小值,然後和頂部元素互換,之後再用同樣的方法排序剩餘的數,最終得到排序的結果。using system using system.collections.generic using system.linq using system.tex...
經典演算法系列之 選擇排序
1 前言 演算法,在計算機中的地位,就相當於人類大腦的決策中樞系統,哪怕最簡單的演算法,其精妙的思維方式,都可以讓人開啟一扇新的視窗。演算法,它不僅僅只是狹義的用來解決電腦科學領域的問題,更是一種 思維方式 演算法思維,是一種深度思考和創造的過程。演算法,只有真正理解了,而不只是所謂的知道,並將應用...