演算法 選擇排序

2021-08-05 19:11:09 字數 1083 閱讀 9866

踏踏實實學演算法,從今天開始,從現在開始。

選擇排序的思想:從開始遍歷選擇最小的元素與第乙個元素進行交換,則第乙個數字為最小,再從剩下元素中選擇最小的元素與第二個進行交換,直到最後乙個元素,陣列實現排序。(從結尾遍歷選擇最大的元素)

優化:把在無序序列中選擇最大元素的過程寫成乙個函式,更加容易理解。

public

class

selectionsort

}// 未排序中最大數與未排序中最後乙個數交換

if (i != index) }}

/*** 寫在乙個函式裡,找最小

*@param array

*/public

static

void

sortoneone(int array)

if (i != index) }}

}/**

* 寫在兩個函式裡

*@param array destination array

*/public

static

void

sorttwo(int array)

}/**

* 找到陣列指定範圍的最大值的index

*/private

static

intindexoflargest(int array, int start, int end)

}return index;

}public

static

void

main(string args) ;

// selectionsort.sortone(array);

// selectionsort.sortoneone(array);

selectionsort.sorttwo(array);

for(int i = 0; i < array.length; i++)

}}

如果本部落格對你有一定幫助,客官請留下你的腳步吧…

演算法 選擇排序,例項分析選擇排序演算法

選擇排序,將乙個序列看做兩個部分,前面有序,後面無序,每次在後面的無序序列中,選擇乙個最小的元素,交換到前面有序序列的末尾,直到無序序列全部完成交換,即可完成排序 選擇排序是不穩定的排序演算法 有乙個序列 5,2,0,1,3,1,4 第一趟排序 第二趟排序 此時我們看到,經過兩趟排序,前面兩個元素 ...

排序演算法 選擇排序

private static int leftchild int i private static void perc int a,int i,int n for int i 0 ir j break else public static void heasp int r,int n for i 0...

排序演算法 選擇排序

摘自 wiki百科 選擇排序 selection sort 是一種簡單直觀的排序演算法。它的工作原理如下。首先在未排序序列中找到最小元素,存放到排序序列的起始位置,然後,再從剩餘未排序元素中繼續尋找最小元素,然後放到排序序列末尾 目前已被排序的序列 以此類推,直到所有元素均排序完畢。c語言實現 vo...