C语言排序之冒泡排序法

 什么是冒泡排序法?数组

    舒适提示:在理解题意的时候,尽可能能用反向思惟来理解。ide

    若有10个大小不1、排序混乱的数字。 若是咱们要将大的排在最前面。spa

    咱们能够经过先将数组中最小的排在后面(这里的为了排大的在前面而先排最小的,我就理解为反向的思惟)。 而后在比较前面9个数字,将最小的拍在第9个位置。 这样依次类推。直到最后一个。 排序

    在这个过程当中其中有一个步骤是将前面的数字进行比较。 这个比较的过程就是一个冒泡的过程。string

    若是咱们只有3个数字 1,2,3。 经过冒泡排序法是这样的。it

    一、将第一位和第二位进行比较,大的排前面小的排后面。就变成了:io

       2,1,3  class

    二、将第二位和第3为比较,大的排前面小的排后面。就变成了:sso

       2, 3, 1word

    三、将第1位和第2为比较,大的排前面小的排后面。就变成了:

       3, 2, 1

    经过这些将小的数字忘后冒的排序过程咱们就完成了排序

    下面是经过C语言来实现的排序过程

  
  
  
  
  1. #include <stdio.h> 
  2.  
  3. int main() { 
  4.     int index = 0, index1 = 0, temp; 
  5.     int arrays[] = { 1, 2, 3, 4, 5 }; 
  6.     int arraysLength = 5, moveCount; 
  7.     for (index = 0; index < arraysLength; index++) { 
  8.         moveCount = arraysLength - 1; 
  9.         for (index1 = 0; index1 < moveCount - index; index1++) { 
  10.             if (arrays[index1] < arrays[index1 + 1]) { 
  11.                 temp = arrays[index1]; 
  12.                 arrays[index1] = arrays[index1 + 1]; 
  13.                 arrays[index1 + 1] = temp; 
  14.             } 
  15.         } 
  16.     } 
  17.     for (index = 0; index < arraysLength; index++) { 
  18.         printf("%d\n", arrays[index]); 
  19.     } 
  20.     return 0; 

打印结果:

5

4

3

2

1    

相关文章
相关标签/搜索