首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 软件管理 > 软件架构设计 >

冒泡排序(Bubble Sort),java版

2012-11-10 
冒泡排序(Bubble Sort),java版.??插入排序(Insert Sort), java版.简单选择排序(Select Sort),java版。??冒

冒泡排序(Bubble Sort),java版.

??插入排序(Insert Sort), java版.简单选择排序(Select Sort),java版。??冒泡排序(Bubble Sort),java版.发表于:2008年12月28日?| 分类:算法?| 标签:?sort?|?

学习的第一个排序方式就是冒泡排序,在是学c语言时候学的。

冒泡排序原理:把最大的(或最小的)冒出来。从底端(即index=0)向上面紧挨着的比较,大的(或小的)冒上来(交换),直到冒到“顶”(顶的解释:没有冒过的,即是冒一趟,顶就矮一层。)。然后继续下一趟冒,直到底端不是“顶”。
时间复杂度:平均O(n2),最坏情况O(n2)。

示例代码:

  1. package?com.chenlb.sort;??
  2. ??
  3. import?java.util.Arrays;??
  4. ??
  5. public?class?BubbleSort?{??
  6. ??
  7. ????public?static?int[]?sort(int[]?datas)?{??
  8. ????????for(int?i=1;?i<datas.length;?i++)?{??
  9. ????????????for(int?j=0;?j<datas.length-i;?j++)?{??
  10. ????????????????if(datas[j]?>?datas[j+1])?{??
  11. ????????????????????SortUtil.swap(datas,?j,?j+1);??
  12. ????????????????}??
  13. ????????????}??
  14. ????????}??
  15. ????????return?datas;??
  16. ????}??
  17. ??
  18. ????public?static?void?main(String[]?args)?{??
  19. ????????int[]?datas?=?{5,1,3,4,9,2,7,6,5};??
  20. ????????sort(datas);??
  21. ????????System.out.println(Arrays.toString(datas));??
  22. ??
  23. ????????datas?=?SortUtil.randomDates(10);??
  24. ????????sort(datas);??
  25. ????????System.out.println(Arrays.toString(datas));??
  26. ??
  27. ????}??
  28. ??
  29. }??

运行结果:

  1. [1,?2,?3,?4,?5,?5,?6,?7,?9]??
  2. [68,?86,?143,?175,?242,?281,?332,?481,?603,?861]??

?

?

冒泡排序(Bubble Sort),java版

随机日志 ?
  • solr sint 字段 hashcode 冲突高达99%,导致 solr-memcached 的 bug
  • ictclas4j for lucene analyzer
  • 为 httpclient 设置代理, 设置http头.
  • 金士顿 Kingston 16G 假冒 U盘
  • 关于 Jms Topic 持久订阅

    相关日志 ?
    • groovy sort 排序语法
    • 堆排序(Heap Sort),java版.
    • 简单选择排序(Select Sort),java版。
    • 插入排序(Insert Sort), java版.
    • 使 Grails one-to-many 中的 set 可排序。

      ?

热点排行