守望

Here we go!

  C++博客 :: 首页 :: 新随笔 :: 联系 :: 聚合  :: 管理 ::
  0 随笔 :: 6 文章 :: 0 评论 :: 0 Trackbacks
用一个标记flag标识此趟遍历是否有元素交换,如果没有则说明已经排好序了

 1 void bubble_sort(int array[], int n)
 2 {
 3    int i;
 4    int j;
 5    for (i = n - 1; i > 0--i)
 6    {
 7       int flag = 0;
 8       for (j = 0; j < i; ++j)
 9       {
10          if (array[j] > array[j + 1])
11          {
12             int tmp = array[j];
13             array[j] = array[j + 1];
14             array[j + 1= tmp;
15             flag = 1;
16          }
17       }
18 
19       if (flag == 0)
20          break;
21    }
22 }
23 
posted on 2011-10-22 21:35 winter 阅读(38) 评论(0)  编辑 收藏 引用 所属分类: 算法