欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

冒泡排序的简单Demo

程序员文章站 2024-03-20 20:22:34
...

冒泡排序

基本介绍

冒泡排序(Bubble Sorting)的基本思想是:通过对待排序序列从前向后(从下标较小的元素开始),依次比较相邻元素的值,若发现逆序则交换,使值较大的元素逐渐从前移向后部,就象水底下的气泡一样逐渐向上冒。

排序过程

排序规则:

​ 1.一共进行数组的大小-1次的循环

​ 2.每一趟排序的次数在逐渐地减小

​ 3.如果我们发现在某趟排序中,没有发生一次交换,就可以提前结束冒泡排序。

第一趟排序:找出最大的那个数

第二趟排序找出倒数第二大的:

​ …

下面依次类推

应用实例

package com.wxit.sort;

import java.util.Arrays;

/**
* @Author wj
**/
public class BubbleSort {

 public static void main(String[] args) {
     int arr[] = {3,9,-1,10,-2};
     int temp = 0;
     for (int i = 0; i < arr.length - 1; i++) {
         for (int j = 0; j < arr.length -1 - i; j++) {
             if (arr[j] > arr[j + 1]){
                 temp = arr[j];
                 arr[j] = arr[j + 1];
                 arr[j + 1] = temp;
             }
         }
         System.out.println("第" + (i + 1) + "次排序后的向数组");
         System.out.println(Arrays.toString(arr));
     }
 }
}

以上代码没有考虑一次交换都没有发生,或者不需要数组长度减1次交换。所以待优化。