冒泡排序(Bubble Sort)

/**
  * 冒泡排序
  * @param data:等待排序整型数组
  *     data = { 95, 27, 90, 49, 80, 58, 6, 9, 18, 50 }
  *    排序结果:
  *        第 1 次排序:27 90 49 80 58 6 9 18 50 95 
  *        第 2 次排序:27 49 80 58 6 9 18 50 90 95 
  *        第 3 次排序:27 49 58 6 9 18 50 80 90 95 
  *        第 4 次排序:27 49 6 9 18 50 58 80 90 95 
  *        第 5 次排序:27 6 9 18 49 50 58 80 90 95 
  *        第 6 次排序:6 9 18 27 49 50 58 80 90 95 
  *        第 7 次排序:6 9 18 27 49 50 58 80 90 95 
  */
 public void sort(int[] data) {
  int max = data.length;
  boolean flag = true;

  for (int i = 0; i < max - 1 && flag; i++) {
   flag = false;
   for (int j = 0; j < max - i - 1; j++) {
    if (data[j + 1] < data[j]) {
     int temp = data[j];
     data[j] = data[j + 1];
     data[j + 1] = temp;
     flag = true;
    }
   }
   System.out.print("第 " + (i+1) + " 次排序:");
   for (int k = 0; k <= max - 1; k++) {
    System.out.print(data[k] + " ");
   }
   System.out.println();
  }
 }

阅读更多
个人分类: 算法
上一篇选择排序
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

关闭
关闭