码迷,mamicode.com
首页 > 编程语言 > 详细

基本算法--冒泡排序

时间:2015-10-27 13:39:06      阅读:230      评论:0      收藏:0      [点我收藏+]

标签:

无人不知无人不晓的冒泡排序,据说是模仿泡泡从水中浮起跑到水面的过程。来看一下代码:

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));

    }

}

输出为:

[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]

冒泡排序比较简单,但是也比较浪费时间,在此基础上有很多改良的排序方法,后面博客中说明

基本算法--冒泡排序

标签:

原文地址:http://my.oschina.net/songxinqiang/blog/522549

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!