Java实现冒泡排序详细代码

Java实现冒泡排序详细代码冒泡排序定义冒泡排序(BubbleSort)也是一种简单直观的排序算法。它重复地走访过要排序的数列,一次比较两个元素,如果他们的顺序错误就把他们交换过来。走访数列的工作是重复地进行直到没有再需要交换,也就是说该数列已经排序完成。这个算法的名字由来是因为越小的元素会经由交换慢慢”浮”到数列的顶端。算法步骤比较相邻的元素。如果第一个比第二个大,就交换他们两个。对每一对相邻元素作同样的工作,从开始第一对到结尾的最后一对。这步做完后,最后的元素会是最大的数。针对所有的元素重复以上的步骤,除了最

大家好,又见面了,我是你们的朋友全栈君。

冒泡排序定义

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

算法步骤

比较相邻的元素。如果第一个比第二个大,就交换他们两个。

对每一对相邻元素作同样的工作,从开始第一对到结尾的最后一对。这步做完后,最后的元素会是最大的数。

针对所有的元素重复以上的步骤,除了最后一个。

持续每次对越来越少的元素重复上面的步骤,直到没有任何一对数字需要比较。

Java实现冒泡排序详细代码

具体Java代码实现

/**
 *
 *@author g0rez
 *@data 2021-05-16
 *
 */
public class 冒泡排序 {
    public static void main(String[] args) {
        int[] arr =new int[]{2,4,3,5,6,1,7,8,10,9};
        arr=bubbleSort(arr);
        for(int i = 0;i<arr.length;i++){
            System.out.print(arr[i]+" ");
        }
    }
    public static int[] bubbleSort(int[] arr){
        if(arr.length==0) return arr;
        for(int i=0;i<arr.length;i++){
            for(int j=0;j<arr.length-i-1;j++){
                if(arr[j]>arr[j+1]){
                    int t=arr[j];
                    arr[j]=arr[j+1];
                    arr[j+1]=t;
                }
            }
        }
        return arr;
    }
}

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/152146.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 模型矩阵、视图矩阵、投影矩阵

    模型矩阵、视图矩阵、投影矩阵模型视图投影矩阵的作用,就是将顶点从局部坐标系转化到规范立方体(CanonicalViewVolnme)中。总而言之,模型视图投影矩阵=投影矩阵×视图矩阵×模型矩阵,模型矩阵将顶点从局部坐标系转化到世界坐标系中,视图矩阵将顶点从世界坐标系转化到视图坐标系下,而投影矩阵将顶点从视图坐标系转化到规范立方体中。如下图所示,假设现在要将三维空间中的三角形渲染到屏幕上。三角形的模型文件中,顶点坐标是…

    2022年5月14日
    76
  • SpringBoot整合Mybatis超详细流程

    SpringBoot整合Mybatis超详细流程SpringBoot整合Mybatis超详细流程文章目录SpringBoot整合Mybatis超详细流程前言详细流程0.引入Mybatis1.创建数据2.创建程序目录3.理解后台访问流程4.核心文件配置5.编写entity6.编写dao7.编写Mapper8.编写Service9.编写Controller10.运行项目参考文章前言MyBatis本是apache的一个开源项目iBatis,2010年这个项目由apachesoftwarefoundation迁移到了googlecode,并且

    2022年10月26日
    0
  • git如何查看分支是哪个分支创建的_git checkout -b 分支名

    git如何查看分支是哪个分支创建的_git checkout -b 分支名如何查看分支gitbranch-vvgit如何切换分支gitcheckoutbranch_name查看远程分支gitbranch-a查看本地分支gitbranch创建分支gitbranchtest切换分支到testgitcheckouttest删除本地分支gitbranch-dxxxxx查看本地和远程分支-a前面带*号的代表你当前工作目录所处的分支gitbranch-a…

    2022年8月22日
    17
  • 8_搭建商城搜索微服务[通俗易懂]

    8_搭建商城搜索微服务[通俗易懂]搜索服务的父项目:supergo_search1、建Module:supergo_search2、删除src搜索服务的提供者:supergo_search_service90031、建Module:supergo_search_service90032、改pom<?xmlversion=”1.0″encoding=”UTF-8″?><projectxmlns=”http://maven.apache.org/POM/4.0.0″xmlns:xsi=

    2022年6月25日
    23
  • 基于伯努利原理的速度监测芯片可用于天然气管道泄露检测

    基于伯努利原理的速度监测芯片可用于天然气管道泄露检测基于伯努利原理的速度监测芯片跟杭州迈煌科技用光纤水听器侦听传感技术类似,可用于天然气管道泄露检测。安装操作简单,可在不破坏现有管道下安装,工程易实现。

    2022年6月17日
    31
  • Java8-Stream API

    Java8-Stream API

    2022年3月7日
    32

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号