国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > C++ > 正文

C++排序之直接選擇排序法

2019-11-11 06:01:35
字體:
來源:轉載
供稿:網友

直接選擇排序算法是一種簡單直觀的排序算法。它首先在未排序序列中找到最?。ù螅┰兀娣诺脚判蛐蛄械钠淦鹗嘉恢茫缓笤購氖S辔磁判虻男蛄性刂欣^續尋找最小(大)元素,然后放到已排序序列的末尾。以此類推,直到所有元素排序完畢。

代碼實現如下:

#include <iostream>using namespace std;void PRint(int a[], int n ){  	cout<<n <<":";  	for(int j= 0; j<n; j++)      {  		cout<<a[j] <<" ";  	}  	cout<<endl;  }  void InsertSort(int a[], int len)  {  	for (int i=0; i<len-1; i++)  	{  		int k = i;  		int key = a[i];  		for (int j=i+1; j<len; j++)  //找出剩余數據中最小的數		{  			if (a[j]< key)  			{  				k = j;  				key = a[j];  			}  		}  		if (k!=i)  		swap(a[i], a[k]);  	}  }  int main(){  	int a[9] = {3,1,5,7,2,4,9,6,6};  	InsertSort(a,9);  	print(a,9);  }  排序結果如下:

     9:1 2 3 4 5 6 6 7 9

以上的算法是由小到大的排序方法,如果要由大到小排序,只需修改代碼:if (a[j]< key) 為 if (a[j] > key) ,其他代碼保持不變。


上一篇:C++初探類

下一篇:C++ 函數的遞歸調用

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表

圖片精選

主站蜘蛛池模板: 黄山市| 建水县| 甘孜县| 理塘县| 金堂县| 澳门| 莱芜市| 四子王旗| 黄浦区| 保康县| 抚顺县| 昂仁县| 石柱| 观塘区| 宜良县| 乐昌市| 大港区| 加查县| 老河口市| 永川市| 宜丰县| 汉阴县| 崇仁县| 武城县| 中牟县| 文安县| 滁州市| 葫芦岛市| 威宁| 弋阳县| 福泉市| 两当县| 云南省| 合肥市| 屏东市| 康乐县| 靖州| 珲春市| 富川| 丰城市| 敖汉旗|