首页 > 代码库 > 直接选择排序
直接选择排序
直接选择排序
A.第1趟从中找到最小的,与R0交换
B.第2趟从剩余中找到最小的,与R1交换
........................................................
代码如下
//直接选择排序 void Selectsort(int []a,int n) { //定义变量 int i, j, nMinIndex; for(i=0;i<n;i++) { //最小值标志位 nMinIndex = i; //循环找出最小值 for(j=i+1;j<n;j++) { //进行比较 if (a[j] < a[nMinIndex]) { //如果小于的话,标志位改变 nMinIndex = j; } } //经过上述循环后找出最小值 if(nMinIndex!=i) { //数值进行交换 int c = a[i]; a[i] = a[nMinIndex]; a[nMinIndex] = c; } } }
冒泡与直接选择排序比较
其实直接选择排序很像冒泡排序法,但是它比冒泡好的地方是不用每次不停的进行冒泡,也就是数据比较交换,但是冒泡比它好的地方在于,如果已经排好序的话,就可以直接停止
直接选择排序
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。