话不多说,直接上代码(注释很详细)

        int [] array = {1,2,4,3,4,6,4,9,34,22,4};boolean flag = true;                        //用于优化循环次数,当十个元素,正常需要冒泡九次,但是如果数组在冒泡第五次的时候顺序就已经是从小到大排序好了,后面的循环就多余了int val = 0;                                //相邻元素交换,存储交换值int count = 0;                                //记录交换次数for(int i=0;i<array.length-1;i++) {for(int j=0;j<array.length-1-i;j++) {    //-i-i: 每冒泡一次,都会确定一次最大的元素,放在最后一位,所以每次内循环就可以减少一次循环次数flag = false;if(array[j]>array[j+1]) {        //冒泡val = array[j];array[j] = array[j+1];array[j+1] = val;flag = true;                //记录是否交换元素,如果没有交换,则退出循环}                        }if(flag==false) {System.out.println("冒泡结束");break;}count++;System.out.println(Arrays.toString(array));    //每次冒泡,输出本次结果}System.out.println(Arrays.toString(array));System.out.println("冒泡次数:"+count);

Java冒泡算法(优化版)相关推荐

  1. Java冒泡算法和代码详述

    Java冒泡算法和代码详述 冒泡排序算法是Java排序算法中最基本,也是最有名的算法之一 代码分为两层循环,外层冒泡轮数,里层依次比较 代码说明: package arrays;import java ...

  2. java冒泡法优化_数据结构java版之冒泡排序及优化

    冒泡排序的时间用大O表示法是O(N^2). 传统的冒泡排序: /** * @param total 要排序的数组长度 */ public void sort(int total){ int num[] ...

  3. java 数独算法_java版数独游戏核心算法(一)

    之前学习javascript时用javascript写过一个数独游戏,最近看了一点java的内容,于是就心血来潮想搞一个java版的数独游戏. 现在将全部代码分享出来和大家学习交流,当然代码中有着各种 ...

  4. java 冒泡排序算法优化

    1.冒泡排序优化思想 在文章<JAVA实现冒泡排序算法>中,我们用常规算法实现了冒泡排序,在此篇中,我们对冒泡排序算法进行优化,思想如下:引入一个标志位,默认为true,如果本次或者本趟遍 ...

  5. 请写一个java冒泡算法

    我不是很熟悉Java,但是冒泡排序算法的思路很简单:从第一个元素开始,比较相邻的两个元素,如果第一个比第二个大,就交换它们.每次遍历结束,最大的元素就会被移动到最后一个位置.重复此过程,直到所有元素都 ...

  6. java快速排序算法_JAVA版排序算法之快速排序示例

    本文实例讲述了JAVA快速排序实现方法.分享给大家供大家参考,具体如下: package com.ethan.sort.java; import java.util.Arrays; import ja ...

  7. java 冒泡算法_关于java中的冒泡算法

    /**输入一些数字,要求按顺序输出*/importjava.io.BufferedReader;importjava.io.IOException;importjava.io.InputStreamR ...

  8. 【算法图解】第七章:7.5(狄克斯特拉算法优化版)

    请求参数为:图对应的散列表graph,开始节点start(可选,不选默认为'start') def solution(graph, start='start'):processed = [] # 定义 ...

  9. java基础算法优化解决兔子数量以及拓展

    package javaBlog;/* 古典问题:3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少? 分析:首先我们要明白题目的意思指的是每 ...

  10. Java实现冒泡算法及优化冒泡算法

    基本思想 冒泡排序(Bubble Sort)通过对待排序序列从前向后(从下标较小的元素开始),依次比较相邻元素的值,若发现逆序(前后大小与要求的顺序不一致)则交换,使值较大的元素逐渐从前移向后部,就象 ...

最新文章

  1. 微信小程序,是不是一盘可口的菜!
  2. android socket_盘点Android常用Hook技术
  3. mySql 主从复制linux配置
  4. 重磅!!面试季--最新面试题总结出厂,附题解,后期持续分享!
  5. 【CV】带你入门多目标跟踪(一)领域概述
  6. c语言程序加仿真,求助。C语言的程序和仿真
  7. Imagelist 控件
  8. YL杯超级篮球赛(jzoj 1325)
  9. JS只能输入数字,数字和字母等的正则表达式
  10. 华为EMUI 11开启公测 这十款机型率先尝鲜
  11. 设计模式第四篇-工厂模式
  12. 一线实践 | 借助混沌工程工具 ChaosBlade 构建高可用的分布式系统
  13. Kafka(下):Kafka消费者API,producer拦截器(interceptor)及案例,kafka流Streams,Stream数据清洗案例,Kafka配置信息,flume对接Kafka
  14. 【Godot】拖放的逻辑
  15. yii 高级版后台清理前台的缓存
  16. windows功能_四款功能强大的windows软件,个个都是精品!
  17. 动态规划-类数塔问题(在一个n* m的方格中,m为奇数,放置有n*m个数)
  18. Pantoea(泛菌属)——肠道内善恶兼备的神秘细菌
  19. solr mysql增量导入_10.Solr4.10.3数据导入(DIH全量增量同步Mysql数据)
  20. 去广告插件——火狐浏览器

热门文章

  1. android4.4 计算器,卡西欧仿真计算器
  2. upx脱壳教程(buuctf逆向题新年快乐)
  3. 国内外sns源码搜集
  4. android 左移动画_android 动画Animation之TranslateAnimation移动
  5. 人工智能降噪插件Topaz DeNoise AI
  6. php将文字生成图片显示,php生成文字图片效果
  7. 编程语言Netty原理浅析
  8. access通过身份证号提取性别_身份证号码男女函数(excel中关于18位身份证号的提取性别公式)...
  9. SSM项目实战之八:静态资源文件的整合
  10. Windows系统删除文件时提示找不到该项目,无法删除时的解决办法