美文网首页
java实现冒泡排序法

java实现冒泡排序法

作者: zengsiyong | 来源:发表于2017-08-22 18:21 被阅读15次

插入排序

public class InsertionSort {  
    public static void sort(int data[]) {  
        for (int i = 1; i < data.length; i++) {  
            for (int j = i; j > 0; j--) {  
                if (data[j] < data[j - 1]) {  
                    int temp = data[j];  
                    data[j] = data[j - 1];  
                    data[j - 1] = temp;  }  }   }   }  }  

抽象排序方法

 public static void bubbleSort(int[] arr) {
    int i, j, temp, len = arr.length;
    for (i = 0; i < len - 1; i++)
        for (j = 0; j < len - 1 - i; j++)
            if (arr[j] > arr[j + 1]) {
                temp = arr[j];
                arr[j] = arr[j + 1];
                arr[j + 1] = temp;
            }
    }

具体实现且行数最少

import java.util.Arrays;
public class BubbleSort {
    public static void BubbleSort_Method(int[] arr) {
        int temp;//定义一个临时变量
        for(int i=0;i<arr.length-1;i++){//冒泡趟数
            for(int j=0;j<arr.length-i-1;j++){
                if(arr[j]>arr[j+1]){
                    temp = arr[j];
                    arr[j] = arr[j+1];
                    arr[j+1] = temp;}}}}
    public static void main(String[] args) {
        int arr[] = new int[]{1,6,2,2,5,10,-1,20};
        BubbleSort.BubbleSort_Method(arr);
        System.out.println(Arrays.toString(arr));}}

时空复杂度

Paste_Image.png

方法一

主函数中通过BubbleSort类带参数的构造函数执行冒泡排序

import java.util.Arrays;
/**
 * 冒泡排序
 * @author zsy
 *
 */
public class BubbleSort {
    public BubbleSort(int[] arr) {
        int temp;//定义一个临时变量
        for(int i=0;i<arr.length-1;i++){//冒泡趟数
            for(int j=0;j<arr.length-i-1;j++){
                if(arr[j+1]<arr[j]){
                    temp = arr[j];
                    arr[j] = arr[j+1];
                    arr[j+1] = temp;
                }
            }
        }
    }
    public static void main(String[] args) {
        int arr[] = new int[]{1,6,2,2,5,10,-1,100};
        BubbleSort bubble = new BubbleSort(arr);
        //输出方法1
        for(int i = 0; i < arr.length; i++){
            System.out.print(arr[i] + " ");
            }   
        //输出方法2
        System.out.println(Arrays.toString(arr));
    }
}

方法二

主函数通过调用BubbleSort类的静态方法执行冒泡排序

import java.util.Arrays;
/**
 * 冒泡排序
 * @author zsy
 *
 */
public class BubbleSort {
    public static void BubbleSort_Method(int[] arr) {
        int temp;//定义一个临时变量
        for(int i=0;i<arr.length-1;i++){//冒泡趟数
            for(int j=0;j<arr.length-i-1;j++){
                if(arr[j+1]<arr[j]){
                    temp = arr[j];
                    arr[j] = arr[j+1];
                    arr[j+1] = temp;
                }
            }
        }
    }
    public static void main(String[] args) {
        int arr[] = new int[]{1,6,2,2,5,10,-1};
        BubbleSort.BubbleSort_Method(arr);
        //输出方法1
        for(int i = 0; i < arr.length; i++){
            System.out.print(arr[i] + " ");
            }   
        //输出方法2
        System.out.println(Arrays.toString(arr));
    }
}

运行结果


Paste_Image.png

相关文章

  • 冒泡排序 选择排序

    冒泡排序 java 实现 C 实现 选择排序 java 实现 C 实现

  • 算法-冒泡排序

    算 法:冒泡排序算法时间复杂度: 冒泡排序算法概述 冒泡排序伪代码 冒泡排序实现 冒泡排序算法概述 冒泡排...

  • 数据结构&算法(一)

    一、Java实现快速排序算法 二、Java实现折半插入排序算法 三、Java实现冒泡排序算法

  • Java 实现冒泡排序

    本文介绍冒泡排序原理及 Java 语言实现。 目录 冒泡排序原理 代码实现 冒泡排序原理 比较相邻的元素,升序时如...

  • java实现冒泡排序法

    插入排序 抽象排序方法 具体实现且行数最少 时空复杂度 方法一 主函数中通过BubbleSort类带参数的构造函数...

  • 冒泡排序法——Java实现

    算法描述 冒泡排序(Bubble Sort),是一种计算机科学领域的较简单的排序算法。它重复地走访过要排序的数列,...

  • 常用排序算法的Java实现

    冒泡、插入、选择、归并、快速排序的Java实现

  • 常见排序的java实现

    常见排序的java实现 常见排序java实现 插入排序(二分插入排序) 希尔排序 快速排序(三数中值快排) 冒泡排...

  • java 实现排序算法之「选择排序」

    java 实现排序算法系列 继冒泡排序算法之后,选择排序终于和大家见面了。为什么冒泡排序之后要说选择排序呢,是因为...

  • 冒泡排序法C

    xcode冒泡排序法 下载冒泡排序。

网友评论

      本文标题:java实现冒泡排序法

      本文链接:https://www.haomeiwen.com/subject/odboxxtx.html