返回顶部
首页 > 资讯 > 精选 >Java冒泡排序举例分析
  • 410
分享到

Java冒泡排序举例分析

2023-06-25 16:06:23 410人浏览 薄情痞子
摘要

这篇文章主要讲解了“Java冒泡排序举例分析”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Java冒泡排序举例分析”吧!冒泡排序原理①比较相邻的元素,如果前一个元素比后一个元素大,则交换这两

这篇文章主要讲解了“Java冒泡排序举例分析”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Java冒泡排序举例分析”吧!

冒泡排序原理

①比较相邻的元素,如果前一个元素比后一个元素大,则交换这两个元素的位置

②对每一对相邻的元素循环上面的步骤,最终最后面的元素就是最大值

冒泡排序api设计

类名Bubble
构造方法Bubble:创建Bubble对象
成员方法

public static void sort(Comparable[] a):对数组内元素进行排序

private static void greater(Comparable v,Comparable w);判断v是否大于w

private static void exchange(Comparable[]  a,int x,int y):交换a数组中,索引x和索引y处的值

冒泡排序的代码实现

public class Bubble {    //对数组a进行排序    public static void sort(Comparable[] a){        for(int i=a.length-1;i>0;i--){            for(int j=0;j<i;j++){                if(greater(a[j],a[j+1])){                    exchange(a,j,j+1);                }            }        }     }    //比较v元素是否大于w元素    private static boolean greater(Comparable v,Comparable w){        return v.compareTo(w)>0;    }    //数组元素x和y交换位置    private static void exchange(Comparable[] a,int x,int y){        Comparable t=a[x];        a[x]=a[y];        a[y]=t;    }}//测试代码 class Test{    public static void main(String[] args) {        Integer[] a={4,5,6,3,2,1};        Bubble.sort(a);        System.out.println(Arrays.toString(a));    }}

测试结果:

Java冒泡排序举例分析

冒泡排序的时间复杂度分析

冒泡排序虽然采用了双层for循环遍历,但是真正完成排序的代码在内循环中,所以主要分析内层循环体的执行次数即可

在最坏的情况下。即数组为{6,5,4,3,2,1}的逆序

元素的比较次数为:(N-1)+(N-2)+(N-3)+...+2+1=

((N-1)+1)*(N-1)/2=N^2/2-N/2;

元素的交换次数为:(N-1)+(N-2)+(N-3)+...+2+1=

((N-1)+1)*(N-1)/2=N^2/2-N/2;

总执行次数为:2*(N^2/2-N/2)=N^2-N;

根据大O推导法则,保留最高阶项,即冒泡排序的时间复杂度为O(N^2)

感谢各位的阅读,以上就是“Java冒泡排序举例分析”的内容了,经过本文的学习后,相信大家对Java冒泡排序举例分析这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是编程网,小编将为大家推送更多相关知识点的文章,欢迎关注!

--结束END--

本文标题: Java冒泡排序举例分析

本文链接: https://lsjlt.com/news/305822.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • Java冒泡排序举例分析
    这篇文章主要讲解了“Java冒泡排序举例分析”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Java冒泡排序举例分析”吧!冒泡排序原理①比较相邻的元素,如果前一个元素比后一个元素大,则交换这两...
    99+
    2023-06-25
  • 举例说明javascript冒泡排序
    目录一、什么是冒泡排序二、举个例子第一轮:第二轮:第三轮:第四轮:第五轮:第六轮:总结一、什么是冒泡排序 冒泡排序,Bubble Sort,通过依次来比较相邻两个元素的大小,在每一次...
    99+
    2024-04-02
  • javascript中冒泡排序实例分析
    本篇内容介绍了“javascript中冒泡排序实例分析”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成! ...
    99+
    2024-04-02
  • java冒泡排序
    基本介绍 冒泡排序(Bubble Sorting)的基本思想是:通过对待排序序列从前向后(从下标较小的元素开始),依次比较相邻元素的值, 若发现逆序则交换,使值较大的元素逐渐从前移向后部,就象水底下的...
    99+
    2023-09-14
    java 排序算法 算法
  • C语言中冒泡排序的示例分析
    这篇文章给大家分享的是有关C语言中冒泡排序的示例分析的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。(壹)冒泡排序1.1冒泡排序的设计冒泡排序(Bubble Sort)也是一种简单直观的排序算法。它重复地走访过要排...
    99+
    2023-06-29
  • java List 排序之冒泡排序实例代码
    java List 排序之冒泡排序实例代码List排序,这里介绍两种排序:Collections.sort()排序:假如List集合中放的是Menu对象。public class Menu{ private int id; private ...
    99+
    2023-05-31
    java list 冒泡排序
  • Java实现冒泡排序
    问题描述 利用冒泡排序把一列数组按从小到大或从大到小排序 (一)、冒泡排序思想 以从小到大为例: 1、第一轮的冒泡,从第一个数开始,与相邻的第二个数相比,若第一个数更大,则交换一二的...
    99+
    2024-04-02
  • java排序算法之冒泡排序
    本文实例为大家分享了java排序算法之冒泡排序的具体代码,供大家参考,具体内容如下 冒泡排序 冒泡排序无疑是最为出名的排序算法之一,从序列的一端开始往另一端冒泡(你可以从左往右冒泡,...
    99+
    2024-04-02
  • java 排序算法之冒泡排序
    目录基本介绍图解冒泡排序算法的过程代码实现演变过程优化封装算法大量数据耗时测试基本介绍 冒泡排序(Bubble Sorting)(时间复杂度为 O(n²))的基本思想:通过...
    99+
    2024-04-02
  • Java 十大排序算法之冒泡排序刨析
    目录冒泡排序原理冒泡排序API设计冒泡排序的代码实现冒泡排序的时间复杂度分析冒泡排序原理 ①比较相邻的元素,如果前一个元素比后一个元素大,则交换这两个元素的位置 ②对每一对相邻的元素...
    99+
    2024-04-02
  • Java实现冒泡排序示例介绍
    何为冒泡排序 冒泡:就像气泡从水中冒出来一样 在冒泡排序中,最小数或最大数取决于您是按升序还是降序对数组进行排序,向上冒泡到数组的开头或结尾。 算法描述: 比较相邻的元素。如果第一个...
    99+
    2023-05-18
    Java冒泡排序 Java冒泡排序算法
  • Python_冒泡排序
    从小到大的排序:(最前面的数和一步步和后面的数比较,如果大于则交换,如果不大于则继续循环) 方法1: data = [65, 1, 45, 77, 3, 9, 43, 23, 7, 53, 213, 10] for i in rang...
    99+
    2023-01-30
  • java写一个冒泡排序
    以下是Java语言实现冒泡排序的示例代码: public class BubbleSort { public static void main(String[] args) { i...
    99+
    2023-10-26
    java 算法 排序算法
  • Java 与排序算法(1):冒泡排序
    一、冒泡排序 冒泡排序(Bubble Sort)是一种简单的排序算法,它的基本思想是通过不断交换相邻两个元素的位置,使得较大的元素逐渐往后移动,直到最后一个元素为止。冒泡排序的时间复杂度为 ...
    99+
    2023-09-02
    排序算法 java 算法 冒泡排序
  • Java选择排序举例分析
    这篇文章主要介绍“Java选择排序举例分析”,在日常操作中,相信很多人在Java选择排序举例分析问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Java选择排序举例分析”的疑惑有所帮助!接下来,请跟着小编一起来...
    99+
    2023-06-25
  • Java插入排序举例分析
    本篇内容主要讲解“Java插入排序举例分析”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Java插入排序举例分析”吧!插入排序原理①把所有元素分成已排序和未排序两组②找到未排序组的第一个元素,向...
    99+
    2023-06-25
  • Java归并排序举例分析
    这篇文章主要介绍“Java归并排序举例分析”,在日常操作中,相信很多人在Java归并排序举例分析问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Java归并排序举例分析”的疑惑有所帮助!接下来,请跟着小编一起来...
    99+
    2023-06-25
  • java冒泡排序和选择排序详解
    目录1、冒泡排序2、选择排序法总结1、冒泡排序 冒泡排序(Bubble Sorting)的基本思想是:通过对待 排序序列从前向后(从下标较小的元素开始),依次比较相邻元素的值,若发...
    99+
    2024-04-02
  • java实现冒泡排序算法
    介绍冒泡排序是一种算法,比较相邻元素,如果他们处在错误的位置上,那么交换他们的位置。排序可以进行升序或者降序。原理从第一个元素开始,比较第一个元素和第二个元素,如果第一个元素大于第二个元素,那么交换他们的位置。比较 第二个元素和第三个元素的...
    99+
    2018-06-06
    java 冒泡排序 算法
  • 怎么实现JAVA冒泡排序
    这篇文章将为大家详细讲解有关怎么实现JAVA冒泡排序,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。Java的优点是什么1. 简单,只需理解基本的概念,就可以编写适合于各种情况的应用程序;2. 面向对象;3...
    99+
    2023-06-14
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作