算法描述:对于给定的n个记录,从第一个记录开始依次对相邻的两个记录进行比较,当前面的记录大于后面的记录时,交换位置,进行一轮比较和交换后,n个记录中的最大记录将位于第n位;然后对前(n-1)个记录进行第二轮比较;重复该过程直到进行比较的记录只剩下一个为止。

冒泡排序是非常好理解的,以从小到大排序为例,每一轮排序就找出未排序序列中最大值放在最后。

设数组的长度为N:

(1)比较前后相邻的二个数据,如果前面数据大于后面的数据,就将这二个数据交换。

(2)这样对数组的第0个数据到N-1个数据进行一次遍历后,最大的一个数据就“沉”到数组第N-1个位置。

(3)N=N-1,如果N不为0就重复前面二步,否则排序完成。

以上就是冒泡排序的基本思想,按照这个定义很快就能写出代码。

package sorting;

/**

* 冒泡排序

* 平均O(n^2),最好O(n),最坏O(n^2);空间复杂度O(1);稳定;简单

* @author zeng

*

*/

public class BubbleSort {

public static void bubbleSort(int[] a){

int n = a.length;

int temp = 0;

for (int i=0;i

for (int j=0;j

if(a[j]

temp = a[j];

a[j] = a[j+1];

a[j+1] = temp;

}

}

}

}

public static void main(String[] args){

int[] a ={49,38,65,97,76,13,27,50};

bubbleSort(a);

for (int j:a)

System.out.print(j+" ");

}

}

总结

以上就是本文关于Java冒泡排序简单实现的全部内容,希望对大家有所帮助。感兴趣的朋友可以继续参阅本站其他相关专题。如有不足之处,欢迎留言指出。感谢朋友们对本站的支持!

java冒泡排序代码简单_Java冒泡排序简单实现相关推荐

  1. java子类代码块_java中父类子类静态代码块、构造代码块执行顺序

    父类静态(代码块,变量赋值二者按顺序执行) 子类静态 父类构造代码块 父类构造方法 子类构造代码块 子类构造方法 普通方法在实列调用的时候执行,肯定位于上面之后了 //父类A public class ...

  2. java默认代码地址_Java 8默认方法可能会破坏您的(用户)代码

    java默认代码地址 乍一看, 默认方法为Java虚拟机的指令集带来了一个很棒的新功能. 最后,库开发人员能够开发已建立的API,而不会对其用户代码造成不兼容性. 使用默认方法,当将新方法引入该接口时 ...

  3. java点名代码滚动_JAVA多线程实现简单的点名系统

    效果图如下: CMain函数: package com.shubing.main; public class CMain { public static void main(String[] args ...

  4. java ui代码实现_Java + Element-UI 实现简单的树形菜单

    一.简单入门级树形菜单实现(纯后台逻辑) 1.简介 (1)开发环境 IDEA + JDK1.8 + mysql 1.8 SpringBoot 2.2.6 + mybatis-plus 此处仅后台开发( ...

  5. java简单代码实现_java的简单代码实现

    展开全部 1)package com.yck.test; //我的这个文件的文件名即后缀是:Test.java public class Test{ private static String str ...

  6. 圣诞节java代码实现_java 实现简单圣诞树的示例代码(圣诞节快乐)

    代码如下: @Test public void shengdanshu(){ //叶子层 int level = 10; //根层 int rootLevel = 2; int spaceNum = ...

  7. java考察代码_一段简单的关于字符串的 Java 代码竟考察了这么多东西

    下面的代码运行结果是什么?解释一下为什么会有这些差异. String s1 = "hello"; String s2 = s1 + ",world"; Stri ...

  8. java编写的浏览器_Java编写简单的网页浏览器

    时间:2019-01-25 概述:网页浏览器 Web 浏览器 用Java语言编写实现一个简单的WEB浏览器,我们经常要在Internet 上浏览网页,这就需要浏览器,目前使用比较广泛的是Interne ...

  9. Java英汉翻译程序_java实现简单的英文文本单词翻译器功能示例

    本文实例讲述了java实现简单的英文文本单词翻译器功能.分享给大家供大家参考,具体如下: 直接上代码: package fanyi; import java.io.bufferedreader; im ...

  10. java递归算法经典实例_Java实现简单的递归操作方法实例

    前言 在数据结构算法设计中,或者一个方法的具体实现的时候,有一种方法叫做"递归",这种方法在思想上并不是特别难,但是实现起来还是有一些需要注意的.虽然对于很多递归算法都可以由相应的 ...

最新文章

  1. 23hibernate_pessimistic_locking
  2. 数据如何写入到HBase
  3. 远程Service的显示 / 隐式启动
  4. MySQL支持的四种索引_Mysql常见四种索引的使用
  5. opencv python 多帧降噪算法_OpenCV-Python中用于视频跟踪的Meanshift和Camshift算法介绍...
  6. Qt 程序获取程序所在路径、用户目录路径、临时文件夹等特殊路径的方法
  7. Ngui之UI框架的层级处理
  8. 啥是佩奇?爷爷,我用Python给你画一个
  9. [BJDCTF2020]Cookie is so stable
  10. 如何解决uchome自带编辑器无法获取uchome编辑器里面的值问题?(uchome二次开发)...
  11. 风投盯上阿里云开发者大会寻下一个阿里
  12. java学习资料免费下载(持续更新ing)
  13. QNX分布式实时操作系统初步认识-QNX系统了解认识
  14. oracle blob 24909,imp导入含blob字段的大表时不成功
  15. Android N 分屏适配
  16. 计算机系统的图像编码方式,彩色图像编码方案
  17. ng 无法加载文件 C:\Users\hl\AppData\Roaming\npm\ng.ps1 解决方法
  18. 去水印视频软件免费版,免费去水印的视频软件
  19. 采用C++ 11标准判断两个浮点数是否相等
  20. 名策数据祝清:巴菲特不能复制,量化与程序化交易才是王道

热门文章

  1. 怎么把手机字体改成繁体_手机变成繁体字怎么改回来
  2. Java例15.13——使用MVC结构计算三角形面积
  3. 谈谈我见到的杨钰莹是什么样子
  4. Adobe Illustrator CS3
  5. Linux教程+操作系统教程 -- 大全
  6. 运行VS编译的程序提示“由于应用程序配置不正确,应用程序未能启动”的问题
  7. 江苏省淮安市谷歌高清卫星地图下载
  8. mysql酒店客房管理系统的设计_《酒店客房管理系统设计》总结
  9. 发力“创新宇宙”,酒店集团如何破局商业革新?
  10. 创新创业孵化知识体系-创业实践导论之-技术专栏