java 算法之冒泡排序实例详解

2025-05-29 0 14

java 算法冒泡排序实例详解

无人不知无人不晓的冒泡排序,据说是模仿泡泡从水中浮起跑到水面的过程。

在要排序的一组数中,对当前还未排好序的范围内的全部数,自上而下对相邻的两个数依次进行比较和调整,让较大的数往下沉,较小的往上冒。即:每当两相邻的数比较后发现它们的排序与排序要求相反时,就将它们互换。

来看一下代码:

?

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43
package cn.songxinqiang.study.algorithm.sort;

import java.util.Arrays;

/**

* 冒泡排序

*

* <p>

* 众里寻她千百度, 蓦然回首, 那人却在灯火阑珊处.

* </p>

*

* @author 阿信sxq-2015年7月16日

*

*/

public class BubbleSort {

/**

* 原理:在要排序的一组数中,对当前还未排好序的范围内的全部数,自上而下对相邻的两个数依次进行比较和调整,让较大的数往下沉,较小的往上冒。即:

* 每当两相邻的数比较后发现它们的排序与排序要求相反时,就将它们互换。

*

* @author 阿信sxq-2015年7月16日

*

* @param args

*/

public static void main(String[] args) {

int a[] = { 49, 38, 65, 97, 76, 13, 27, 49, 78, 34, 12, 64, 5, 4, 62, 99, 98, 54, 56, 17,

18, 23, 34, 15, 35, 25, 53, 51 };

int temp = 0;

for (int i = 0; i < a.length - 1; i++) {

for (int j = 0; j < a.length - 1 - i; j++) {

if (a[j] > a[j + 1]) {

temp = a[j];

a[j] = a[j + 1];

a[j + 1] = temp;

}

}

}

System.out.println(Arrays.toString(a));

}

}

输出为:

?

1
[4, 5, 12, 13, 15, 17, 18, 23, 25, 27, 34, 34, 35, 38, 49, 49, 51, 53, 54, 56, 62, 64, 65, 76, 78, 97, 98, 99]

以上就是关于冒泡排序的实例详解,如有疑问请留言或者到本站社区交流讨论,感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

原文链接:https://my.oschina.net/songxinqiang/blog/522549

收藏 (0) 打赏

感谢您的支持,我会继续努力的!

打开微信/支付宝扫一扫,即可进行扫码打赏哦,分享从这里开始,精彩与您同在
点赞 (0)

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。

快网idc优惠网 建站教程 java 算法之冒泡排序实例详解 https://www.kuaiidc.com/115601.html

相关文章

发表评论
暂无评论