当前位置:   article > 正文

算法之排序——交换排序(选择排序,冒泡排序)_选择排序是交换排序吗

选择排序是交换排序吗

选择排序:

选择排序是交换排序的一种,从字面上理解就是交换元素以达到排序的目的。

选择排序算法的基本思想是对待排序的元素序列a[l]~a[r]进行r-l遍处理,第i遍处理是将第i小的元素放到第i个位置上,这样排序i次后前i小的元素都已经确定,下一次排序从第i+1个位置开始,对之后的元素与第i+1个元素进行比较,如果找到某元素比第i+1个位置上的元素还小,则交换。

C语言代码:


  1. //选择排序所用的时间n*n,对于数比较多的时候相当费时
  2. //选择排序是交换排序的一种
  3. #include<stdio.h>
  4. #include<malloc.h>//为了使用malloc函数
  5. int count=0;//定义为局部变量,记录比较次数
  6. int sum=0;//定义为全局变量,记录交换次数
  7. void sort(int *a,int n)
  8. {
  9. int i,j,t;
  10. for( i=0;i<n-1;i++) //n个数只要做n-1次排序,每次排序将小的数放到第i个位置上
  11. {
  12. for( j=i+1;j<n;j++) //每次从第i+1个数开始,因为第i+1个之前已经有序
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/在线问答5/article/detail/794953
推荐阅读
相关标签
  

闽ICP备14008679号