`

冒泡排序的两种实现方法(Java)

阅读更多

冒泡排序的两种Java实现方法。

方法一:

 

public void bubbleSort(int[] array) {
  int length = array.length - 1;
  for(int i = length; i > 0; i--) {
   for(int j = 0; j < i; j++) {
    if(array[j] > array[j+1]) {
     swap(array, j, j+1);
    }
   }
  }
 }
 
 private void swap(int[] array, int aIndex, int bIndex) {
  int temp = array[aIndex];
  array[aIndex] = array[bIndex];
  array[bIndex] = temp;
 }

 方法二:

 public void bubbleSort(int[] array) {
  int length = array.length - 1;
  for(int i = 0; i < length; i++) {
   for(int j = i + 1; j <= length; j++) {
    if(array[i] > array[j]) {
     swap(array, i, j);
    }
   }
  }
 }
 
 private void swap(int[] array, int aIndex, int bIndex) {
  int temp = array[aIndex];
  array[aIndex] = array[bIndex];
  array[bIndex] = temp;
 }

 

冒泡排序的时间复杂度是O(n^2),空间复杂度是O(1)。

 

 

0
1
分享到:
评论

相关推荐

    java基础冒泡排序.ppt

    冒泡排序(Bubble Sort),是一种计算机科学领域的较简单的排序算法。 它重复地走访过要排序的元素列,依次比较两个相邻的元素,如果顺序(如从大到小、首字母从Z到A)错误就把他们交换过来。 走访元素的工作是重复...

    常用排序算法的java实现(冒泡、插入、选择、希尔、归并、快排)

    用java实现了以下算法: 1、冒泡排序、冒泡排序的两种改进。 2、插入排序。 3、选择排序。 4、希尔排序。 5、归并排序。 6、快速排序。

    C语言实现的冒泡排序算法(另附Java实现代码)

    对于有经验的开发者,也可以通过对比C和Java的实现,加深对两种语言的了解。此外,本文还提供了一些优化冒泡排序的方法,如变长比较和提前结束循环等,有助于读者在实际应用中进一步提高算法的效率。

    java的两种冒泡排序算法

    面试面多了冒泡也写的多了,这个里面有两种方式,相互学习下哦!

    java语言多种排序

    设计一个负责排序的程序包,实现多种排序算法,至少包括插入排序、冒泡排序和快速排序算法。 要求: 1.可以对任何简单类型和任意对象进行排序 2.可以支持升序、降序、字典排序等多种顺序要求 3.可以随意增加排序算法...

    Java排序算法实现:冒泡与选择排序示例代码

    这里提供了两种常见的排序算法实现:冒泡排序和选择排序。 冒泡排序(Bubble Sort) 是一种基本的排序算法,它通过多次遍历数组,比较相邻元素的大小并交换它们,从而使最大(或最小)的元素逐渐移动到数组的最后。...

    冒泡排序java实现

    java实现冒泡排序,冒泡排序(Bubble Sort),是一种计算机科学领域的较简单的排序算法。 它重复地走访过要排序的数列,一次比较两个元素,如果他们的顺序错误就把他们交换过来。走访数列的工作是重复地进行直到没有...

    跟我学Java面向对象程序设计技术及应用——应用冒泡排序算法实现数组元素排序的Java程序实现示例.pdf

    职业提升必读系列资料 杨教授工作室,版权所有,盗版必究, 1/29 页 1 跟我学 Java 面向对象程序设计技术及应用——应用冒泡排序算法实 现数组元素排序的 Java 程序实现示例 1.1 什么是冒泡排序算法 1.1.1 什么是...

    几种经典的排序算法java实现

    冒泡排序、快速排序、直接插入排序、简单选择排序 等经典算法的思想介绍,大白话简单易懂。并用java实现。代码拿去即可用,不需做任何修改! 部分内容: /** * 快排:O(n*logn);如果是从小到大排序; * 思想:选...

    Java语言冒泡排序.pdf

    冒泡排序是一种简单的排序算法,它的基本思想是通过相邻元素的比较和交换位置,将最大的元素逐渐"冒泡"到数组的末尾。 具体实现步骤如下: 从第一个元素开始,依次比较相邻的两个元素的大小,如果前一个元素大于...

    冒泡排序算法实现javascript, python, go, java, php

    冒泡排序算法是一种简单直观的排序算法,主要通过比较相邻元素的值,依次交换位置,直到没有任何一对数字需要交换,从而完成排序。该算法得名于较小或较大的元素会像水中的气泡一样逐渐“浮”到数列的顶端或底端。...

    JAVA冒泡排序.zip

    冒泡排序是一种简单的排序算法,它的基本思想是通过相邻元素之间的比较和交换,将待排序序列中的最大元素逐步沉底,直到整个序列有序为止。冒泡排序的时间复杂度为O(n^2),其中n为待排序序列的长度。 冒泡排序的...

    冒泡排序java。。。。。。。。

    冒泡排序是一种简单的排序算法。它重复地走访过要排序的数列,一次比较两个元素,如果它们的顺序错误就把它们交换过来。走访数列的工作是重复地进行直到没有再需要交换,也就是说该数列已经排序完成。这个算法的名字...

    Java实现几种常见排序方法-直插、冒泡、选择、快排、堆排等

    日常操作中常见的排序方法有:冒泡排序、快速排序、选择排序、插入排序、希尔排序,甚至还有基数排序、鸡尾酒排序、桶排序、鸽巢排序、归并排序等。 冒泡排序是一种简单的排序算法。它重复地走访过要排序的数列,一...

    自底向上归并排序和冒泡排序时间对比

    BOTTOMUPSORT排序算法和冒泡排序时间对比,通过生成随机数放到数组里面,再通过大量的数据比较这两种排序算法所用的时间,用JAVA实现。

    快速排序是对冒泡排序的一种改进

    快速排序是对冒泡排序的一种改进,其基本思想是通过一趟排序将要排序的数据分割成独立的两部分,其中一部分的所有数据都比另外一部分的所有数据都要小,然后再按此方法对这两部分数据分别进行快速排序,整个排序过程...

    JAVA冒泡排序和二分查找的实现

    本文详细介绍了JAVA冒泡排序和二分查找的实现,虽然这两种算法比较简单,但是确实我们必须需要掌握的。下面来看看。

    java实现冒泡排序算法

    冒泡排序(Bubble Sort)是一种简单的排序算法。它重复地走访过要排序的数列,一次比较两个元素,如果他们的顺序错误就把他们交换过来。走访数列的工作是重复地进行直到没有再需要交换,也就是说该数列已经排序完成...

    java负责排序的程序包

    设计一个负责排序的程序包,实现多种排序算法,至少包括插入排序、冒泡排序和快速排序算法。 要求: 1.可以对任何简单类型和任意对象进行排序 2.可以支持升序、降序、字典排序等多种顺序要求 3.可以随意增加排序算法...

    Java实现常用排序算法

    实现了四类排序算法,插入排序、交换排序、选择排序、归并排序,详情请看文档,其中 树形选择排序算法--选择排序、 堆排序--选择排序 这两种算法还没实现,有兴趣的自行解决

Global site tag (gtag.js) - Google Analytics