祭奠被遗忘的冒泡排序
冒泡算法(从小到大):
1、依次比较相邻的两个元素。若第一的值大于第二的值,则交换它们;
2、每轮将会把大值交换到数组尾;
3、因而每轮比较的次数越来越少;
public class BubbleSort_1 {public void BubbleSort_1(int[] score) {// 方法一:int j, i, temp;for (i = score.length - 1; i > 0; i--) {// 从小到大for (j = 0; j < i; j++) {if (score[j] > score[j + 1]) {// 每轮把最大的交换到后面temp = score[j];score[j] = score[j + 1];score[j + 1] = temp;}}showDate(score); // 打印 }}public void BubbleSort_2(int[] score) {// 方法二int j, i, temp;for (i = 0; i < score.length; i++) {// 从小到大for (j = i; j < score.length; j++) {if (score[i] > score[j]) {/* >时,每轮最小的交换到前面,<时每轮最大的交换到前面 */temp = score[i];score[i] = score[j];score[j] = temp;}}showDate(score);// 打印 }}public void BubbleSort_3(int[] score) {// 方法三:int j, i, temp;for (i = 1; i < score.length; i++) {// 从大到小temp = score[i];for (j = i; j > 0 && score[j] > score[j - 1]; j--) {// 每轮最大的交换到前面score[j] = score[j - 1];}score[j] = temp;showDate(score); // 打印 }}public void showDate(int[] n) {for (int i = 0; i < n.length; i++) {System.out.print("score[" + i + "] = " + n[i] + " ");}System.out.println();}public static void main(String[] args) {BubbleSort_1 s = new BubbleSort_1();int score[] = { 88, 99, 44, 77, 33, 22 };s.BubbleSort_1(score);//s.BubbleSort_2(score);//s.BubbleSort_3(score); } }
转载于:https://www.cnblogs.com/love--wenxing/p/4151947.html
祭奠被遗忘的冒泡排序相关推荐
- 遗忘比较、排序网络、非常见排序
目录 一,遗忘比较交换算法 二,0-1排序引理 三,列排序 四,比较网络 1,比较算子 2,比较网络 3,比较网络的可并行性 五,排序网络 1,排序网络 2,排序网络的判定 3,冒泡排序的排序网络 4 ...
- 冒泡和快速排序的时间复杂度_「排序」冒泡排序、快速排序—图解+手撕
前言 无论是日后面试还是笔试的,排序在数据结构与算法中有着举足轻重的地位,所以还是决定把数据结构这个专题好好写写,多研究研究!今天和大家一起学习交换类排序--冒泡和快排详解! 在排序中,冒泡和快排是考 ...
- 祭奠我那失去的青春--故游柞水(二、故地重游)
经过15年的辗转,我于2012年7月24日再次乘坐飞机来到了西安,在机上我就有一个念头–看看我那流过泪.受过苦.踏上社会.第一次工作过的地方,经常在梦里萦回的地方变成了什么样,是否和我一样浴火重生或还 ...
- PHP算法题:如何实现冒泡排序
算法原理: 1.比较相邻的元素,如果第一个比第二个大,那么就交换这两个元素. 2.对每一对相邻元素做同样的工作,从第一对开始到最后一对结束,最后的元素应该会是最大的数. 3.除了最后一个元素外,针对其 ...
- Android 相对布局别自己快遗忘的属性layout_alignRight,layout_alignBottom,layout_alignTop,layout_alignLeft
今天在群里看到有人提到layout_alignRight 这种属性,自己想了半天居然没有了印象 赶紧写一个布局看看这个相对布局的属性 先看下自己常用的属性 android:alignParentBot ...
- C#基础——数组(冒泡排序)
数组 所谓数组,就是相同数据类型的元素按一定的顺序的集合,就是把有限个类型相同的变量用一个名字来命名,然后用编号区分他们的变量的集合,这个名字称为数组名,编号称为下标.组成数组的各个变量称为数组的分量 ...
- python实现冒泡排序完整算法_Python实现冒泡排序算法的完整实例
冒泡排序:顾名思义就是(较小的值)像泡泡一样往上冒,(大的值)往下沉. 实现原理:依次将相邻两个数值进行比较,较小的数值移到左边,较大的数值移到右边,依次比较完第一轮后,最大的数值应该排在最右边.然后 ...
- 为什么双层循环 冒泡排序_冒泡排序的双重循环理解
主要说一下冒泡排序的一些关键地方的个人理解,比如算法思想,两个循环的作用意义,中间循环变量范围的确定等. 原理:比较两个相邻的元素,将值大的元素交换至右端. 思路:依次比较相邻的两个数,将小数放在前面 ...
- 排序 时间倒序_经典排序算法之冒泡排序(Bubble Sort)
冒泡排序 ( Bubble Sort ) 冒泡排序,正如它的名字一样,未排序数组中的最大(小)值会依次往上浮.冒泡排序主要有两个基本步骤:相邻元素之间的比较 和 交换位置. 步骤分析: 令待排序序列为 ...
- Equalizing Two Strings 冒泡排序or树状数组
首先考虑排序后相等 如果排序后相等的话就只考虑reverse长度为2的,所以a或者b排序后存在相邻两个字母相等的话就puts YES,n>26也直接puts YES 不然的话就假设c为a,b排完 ...
最新文章
- 10个重构小技巧,去掉代码中的S味
- np实现sigmoid_使用numpy实现一个深度学习框架
- 云原生时代,2个方案轻松加速百万级镜像
- Spring MVC found on classpath, which is incompatible with Spring Cloud Gateway.
- OpenGL 距离场美化实例
- SVG PATH d参数的 ace
- .Net Core微服务系列--开篇
- aop框架 php,xaop: 支持三种模式的AOP框架,弥补PHPer的不足,并且自带了文档的解析类库,可以一并使用,性能极好,欢迎 STAR 与 FORK。...
- UE4 虚幻引擎,BluePrint蓝图接受输入
- 现在卖什么赚钱?看看你适合哪种赚钱方式!
- 万恶的hello world!
- flyaway mysql_mysql 常用命令
- 如何使用启动盘启动计算机,电脑重装系统怎么设置用U盘启动盘引导?
- 揭秘史上最烂开发项目:苦撑12年,600万+行代码!
- DOS时代往事的回忆
- 利用fiddler和低版本的iTunes实现iOS抓包
- ERROR 2003 (HY000): Can't connect to MySQL server on 'localhost' (10061)
- Lasso 和 Ridge回归中的超参数调整技巧
- 原生js动态添加class
- 副连长是什么级别_连长相当于地方上什么级别的干部