Java —— 冒泡排序
什么是冒泡排序
冒泡排序(Bubble Sort),是一种计算机科领域的较简单的排序算法。
它重复地走访过要排序的元素列,依次比较两个相邻的元素,如果顺序(如从大到小、首字母从Z到A)错误就把他们交换过来。走访元素的工作是重复地进行,直到没有相邻元素需要交换,也就是说该元素列已经排序完成。【解释来源百度】
原理
- 比较相邻的元素。如果第一个比第二个大,就交换他们两个;
- 对每一对相邻元素做同样的工作,从开始第一对到结尾的最后一对。在这一点,最后的元素应该会是最大的数;
- 针对所有的元素重复以上的步骤,除了最后一个;
- 持续每次对越来越少的元素重复上面的步骤,直到没有任何一对数字需要比较;
【动态示意图】
【代码演示】
public class BubbleSort {public static void main(String[] args) {int [] array = {5,3,9,1,2,84,6};int outer = array.length;for (int i = 1 ; i< outer ; i++){int intimal = outer - i;for (int j = 1 ; j <= intimal ; j++){if (array[j-1] > array[j]){int number = array[j-1];array[j-1] = array[j];array[j] = number;}}System.out.println("第"+i+"轮冒泡排序结果为:");for (int a:array){System.out.print(a+"\t");}System.out.println("");}}
}
Java —— 冒泡排序相关推荐
- Java冒泡排序【简】
为什么80%的码农都做不了架构师?>>> Java冒泡排序 概念:重复遍历要排序的数列.一次比较两个元素,大小互换.遍历到该数列无需互换,排序完成 Java冒泡排序 publi ...
- java 冒泡排序_Java冒泡排序详解
Java冒泡排序 排序算法概述 所谓排序,就是使一串记录,按照其中的某个或某些关键字的大小,递增或递减的排列起来的操作.排序算法,就是如何使得记录按照要求排列的方法.排序算法在很多领域得到相当地重视, ...
- 从键盘上录入学生人数和每个学生的分数,按分数降序输出所有的分数,java冒泡排序应用
从键盘上录入学生人数和每个学生的分数,按分数降序输出所有的分数 import java.util.Arrays; import java.util.Scanner;/* * 从键盘上录入学生人数和每个 ...
- java冒泡排序 快速排序_Java必备-冒泡排序,选择排序,快速排序(纯代码实现)
importjava.util.Arrays;/*** 是将无序a[0],a[1]...a[n],将其升序排序,比较a[0].a[1]的值,若结果为1,则交换两者的值,否则不变,接着继续向下比较.最后 ...
- c语言数组项目按身高排序,过三关 Java冒泡排序选择排序插入排序小练习
材料:猴子排序,按照身高来从小到大来排序. 第一关: 老猴子带领小猴子队伍按大小逐一比较,交换,开始高矮排列队伍.(冒泡排序) 第二关: 太慢了,给第一关增加难度,进行选择排序 第三关: 最后,尝试选 ...
- 实现简单的Java冒泡排序代码
冒泡排序基本介绍 它重复地走访过要排序的数列,一次比较两个元素,如果他们的顺序错误就把他们交换过来.走访数列的工作是重复地进行直到没有再需要交换,也就是说该数列已经排序完成.这个算法的名字由来是因为越 ...
- 冒泡排序的代码java,Java冒泡排序代码示例
Java冒泡排序代码示例 代码如下:↓ package com.coding.learn; import java.util.Arrays; /** * @author 老菜鸟 * @version ...
- JAVA冒泡排序算法(含详细过程代码讲解及优化)
冒泡排序算法拆分讲解及优化 java冒泡排序 一.代码的拆分讲解 从上面步骤,可以观察到每次的j都相对于前一趟进行-1操作,所以可以把这些操作套在一个for循环里来控制j即可. 二.冒泡排序的代码 优 ...
- Java冒泡排序原理速记,选择排序原理速记
Java冒泡排序原理速记,选择排序原理速记 冒泡排序原理分析: 冒泡排序从左往右两两比较:保护右边的排序好的元素(比较直接交换元素). 选择排序原理: 选择排序从左往右依次比较:保护左边排序好的元素( ...
- 懒癌患者的学习记录之JAVA冒泡排序代码
冒泡排序 冒泡排序基本思路: 从第零位开始,依次与后一位进行比较并将较大的往后排较小的往前排.第一次循环就会将最大的值排在最后一位,第二次循环会将第二大的值排在倒数第二位,以此类推. JAVA冒泡排序 ...
最新文章
- CSRF(Cross-site request forgery)跨站请求伪造
- 02_NoSQL数据库之Redis数据库:string类型和hash类型
- 释放Linux磁盘空间方法
- 最优化方法:梯度下降法、SGD
- JavaScript-操作DOM对象-更新dom节点
- MFC操作多个安卓设备(发送指令)
- linux raw格式改名img,4款Linux下的RAW格式图片编辑软件
- java 夏令时标志_夏令时随绝对日期而变化
- Leetcode207---课程表(逆拓扑排序)
- DB2获取CHAR字段数据的数据长度方法
- 花4个月时间整理出《Spring揭秘》的文字版的感受
- 泛微mysql密码_泛微OA 数据库维护笔记(e-cology)
- 国内计算机论文期刊,国内都有哪些计算机领域的投稿期刊
- 伍斯特学院计算机专业排名,美国大学计算机专业排名!
- 学习之 “Spark的安装配置”
- 微信开方平台微信管理员重置
- MobilenetV2学习笔记 --- MobileNetV2: Inverted Residuals and Linear Bottlenecks
- 你不可不知的《哈利波特》秘密(三)
- mysql中declare语句用法详解
- 根据身高体重计算某个人的BMI值