排序之冒泡排序、选择排序

一、选择排序(最简单)

1.原理:

   4  3   2   1

  第一个数与第二个数比较,4 > 3,互换位置,此时第一个数为3,第一个数在于第三个数比较,如此循环,第一轮得到第一个数为最小

2.代码:

 1 int arr[4]  = {4, 3, 2, 1};
 2 
 3 for (int i = 0; i < 3; i++){
 4     for(int j = i + 1; j < 4; j++){
 5         if (arr[i] > arr[j]){
 6             int temp = arr[i];
 7             arr[i] =  arr[j];
 8             arr[j] = temp; 
 9         }
10     }
11 }

二、冒泡排序

1.原理:

  第一个数与第二个数比较,4>3, 则4与3互换位置,4再与后面的数比较,每一轮产生一个最大的数。

2.源码:

 1  int arr[4] = {5,3,2,1};
 2     
 3     for (int i = 3; i > 0; i--) {//i用于指示j要比较到哪个位置
 4         for (int j = 0; j < i; j++) {
 5             if (arr[j] > arr[j+1]) {
 6                 int temp = arr[j];
 7                 arr[j] = arr[j+1];
 8                 arr[j+1] = temp;
 9             }
10         }

猜你喜欢

转载自www.cnblogs.com/jianze/p/9342659.html