選擇排序,選擇排序原理重在乙個「選擇」上,通俗上來說就是把符合要求的資料篩選出來放在合適的位置上。
以由小到大排序為例:
執行過程為,選擇數列的第i個(i可由數列起始位置開始),並將其假定為最小值,剩下的數列值依次與假定最小值比較,並選擇出真正的最小值。記錄最小值在數列中的位置,交換數列中的最小值與數列的第i個值。
**如下:
public class selsort ;
system.out.println("排序前的陣列為:");
for (int num : sort)
//自寫選擇排序
//for(int i=0;iint min=sort[i];
//int minindex=i;
//for (int j=i+1;jif(min>sort[j])
//}//
"交換的兩個數為:"+sort[minindex]+"和"+sort[i]);
//sort[minindex]=sort[i];
//sort[i]=min;
//}//其他選擇排序
for(int i = 0; i < sort.length - 1; i++)
}//在內層迴圈結束,也就是找到本輪迴圈的最小的數以後,再進行交換
if(i != k)
}system.out.println("排序後的陣列為:");
for (int num : sort) }}
資料結構與演算法學習筆記六 選擇排序演算法
選擇排序演算法原理 首先在未排序的序列中找到最大或最小值,將它存放在起始位置,然後再從剩餘未排序序列元素中繼續尋找最大或最小值,將找的最大或最小值存放在已排序的序列尾部。以此類推,直到所有的元素均排序完畢。選擇排序演算法的python實現 如下 def select sort alist 選擇排序 ...
資料結構與演算法學習 拓撲排序
乙個表示工程的有向圖中,用定點表示活動,用弧表示活動之間的優先關係,這樣的有向圖為頂點表示活動的網,稱之為aov網。類似於分支流程圖 aov網不存在環。且各頂點有先後順序。aov網輸出所有頂點,並且順序必須按弧的順序 就是按層來輸出全部頂點 這樣的頂點序列稱為拓撲序列。aov網的拓撲序列並不只有一條...
資料結構與演算法學習
我想重新學習一下資料結構與演算法,打好基礎。to measure is to know.我們用演算法複雜度t n 來表示演算法的效率,效能。t n 的取值 所有問題規模為n的問題例項中,將他們的計算成本進行總體的比較,取出最壞情況下的值。有幾點需要catch,1.演算法執行的時間,會根據程式語言,作...