冒泡排序法

上一篇 / 下一篇  2014-12-26 11:05:48 / 个人分类:开发

  1. 冒泡排序法,给出一组数据,要求按照降序排列。写出设计思想和程序
  2. 其实很简单,就是一个一个进行对比如果a<b/a>b就把两个变量进行交换,使得最大/最小的排在前面。
  3. 2 4 3 5 1 五个数
  4. 2<4  交换成为 42351
  5. 2<3 成为 43251
  6. 2<5 成为 43521
  7. 2>1 不交换 43521
  8. 然后最小的1就一定会在最后
  9. 然后比较前4个数,4>3,3<5(交换),3>2;
  10. 成为45321,
  11. 前3个数4<5(交换),4>3
  12. 就成为了54321
  13. 这是一个巧合的例子,程序应该还要比较前两个数
  14. 5>4
  15. 最后成为54321。

  16. http://www.cnblogs.com/wuzhenbo/archive/2012/03/30/2423861.html:

import java.util.*;
publicclassBubbleSort{
2publicstaticvoidmain(String[] args){
3intscore[] = {67, 69, 75, 87, 89, 90, 99, 100};
4for(inti = 0; i < score.length -1; i++){//最多做n-1趟排序
5for(intj = 0 ;j < score.length - i - 1; j++){//对当前无序区间score[0......length-i-1]进行排序(j的范围很关键,这个范围是在逐步缩小的)
6if(score[j] < score[j + 1]){//把小的值交换到后面
7inttemp = score[j];
8score[j] = score[j + 1];
9score[j + 1] = temp;
10}
11}
12System.out.print("第" + (i + 1) + "次排序结果:");
13for(inta = 0; a < score.length; a++){
14System.out.print(score[a] + "\t");
15}
16System.out.println("");
17}
18System.out.print("最终排序结果:");
19for(inta = 0; a < score.length; a++){
20System.out.print(score[a] + "\t");
21}
22}
23}

TAG:

 

评分:0

我来说两句

Open Toolbar