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

首頁 > 學(xué)院 > 開發(fā)設(shè)計(jì) > 正文

排序算法之選擇排序

2019-11-11 05:11:29
字體:
供稿:網(wǎng)友

選擇排序核心思想 跟 冒泡排序差不多。

冒泡排序做得比較多無用功,而選擇排序相對(duì)較少。

選擇排序代碼如下:

#include<stdio.h>void swap(int *a,int *b){	int t;	t = *a;	*a = *b;	*b = t;}int main(){	int a[]={5,2,3,1,4};	int i,j,min,len;		len = sizeof(a)/sizeof(int);		/*-----主要語句-----*/	for(i=0;i<len;i++)	{		min = i;		for(j=i+1;j<len;j++)			if(a[min]>a[j])				min = j;				if(min!=i)			swap(&a[i],&a[min]);	}	/*---------------*/ 		for(i=0;i<len;i++)		PRintf("%d,",a[i]);		return 0;} 打印結(jié)果:1,2,3,4,5

由上圖可知道,選擇排序在第二層for循環(huán)中,是用 min 來記錄下較小數(shù)值的下標(biāo),一輪循環(huán)過后,min自然是最小的數(shù)值的下標(biāo),然后再做數(shù)值交換。

所以在二層for循環(huán),一輪循環(huán),才會(huì)做一次數(shù)值交換,而不像冒泡排序,只要是檢測(cè)到比最小的還小的數(shù)值就馬上做數(shù)值交換,而不等到整個(gè)循環(huán)結(jié)束(你怎么知道下一個(gè)會(huì)不會(huì)更小呢?)

因此冒泡排序是十分慢的算法


發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 鹿泉市| 久治县| 南木林县| 浑源县| 泰兴市| 宣武区| 射阳县| 康保县| 襄城县| 乌苏市| 阿克苏市| 濉溪县| 屏东县| 团风县| 子洲县| 平定县| 萨迦县| 平武县| 北流市| 耿马| 宣汉县| 峨山| 湖南省| 渝北区| 淳化县| 馆陶县| 星子县| 普宁市| 普兰县| 炎陵县| 扬中市| 阜新| 兖州市| 九龙县| 淮南市| 鄂州市| 泾源县| 长春市| 雅江县| 和平县| 麻江县|