每次确定一个最大值,每一步仅交换相邻位置的元素。

    /*** Bubble sort*/public void bubbleSort() {boolean tempSwapped;DataNode tempNode;for (int i = length - 1; i > 0; i--) {tempSwapped = false;for(int j = 0; j < i; j++) {if (data[j].key > data[j+1].key) {//swaptempNode = data[j+1];data[j+1] = data[j];data[j] = tempNode;tempSwapped = true;}// of if}// of for jif(!tempSwapped) {System.out.println("Premature");break;}// of ifSystem.out.println("Round: " + (length - i));}// of for i}// of bubbleSortpublic static void bubbleSortTest() {int[] tempUnsortedKeys = {1, 3, 6, 10, 7, 5, 9};String[] tempContents = {"if", "then", "else", "switch", "case", "for", "while"};DataArray tempDataArray = new DataArray(tempUnsortedKeys,tempContents);System.out.println(tempDataArray);tempDataArray.bubbleSort();System.out.println("Result\r\n" + tempDataArray);}// of bubbleSortTest

运行结果:

------------------------bubbleSort-----------------------
I am a data array with 7 item.
(1,if)  (3,then)  (6,else)  (10,switch)  (7,case)  (5,for)  (9,while)
Round: 1
Round: 2
Round: 3
Premature
Result
I am a data array with 7 item.
(1,if)  (3,then)  (5,for)  (6,else)  (7,case)  (9,while)  (10,switch)  

day45--冒泡排序相关推荐

  1. PHP算法题:如何实现冒泡排序

    算法原理: 1.比较相邻的元素,如果第一个比第二个大,那么就交换这两个元素. 2.对每一对相邻元素做同样的工作,从第一对开始到最后一对结束,最后的元素应该会是最大的数. 3.除了最后一个元素外,针对其 ...

  2. C#基础——数组(冒泡排序)

    数组 所谓数组,就是相同数据类型的元素按一定的顺序的集合,就是把有限个类型相同的变量用一个名字来命名,然后用编号区分他们的变量的集合,这个名字称为数组名,编号称为下标.组成数组的各个变量称为数组的分量 ...

  3. python实现冒泡排序完整算法_Python实现冒泡排序算法的完整实例

    冒泡排序:顾名思义就是(较小的值)像泡泡一样往上冒,(大的值)往下沉. 实现原理:依次将相邻两个数值进行比较,较小的数值移到左边,较大的数值移到右边,依次比较完第一轮后,最大的数值应该排在最右边.然后 ...

  4. 为什么双层循环 冒泡排序_冒泡排序的双重循环理解

    主要说一下冒泡排序的一些关键地方的个人理解,比如算法思想,两个循环的作用意义,中间循环变量范围的确定等. 原理:比较两个相邻的元素,将值大的元素交换至右端. 思路:依次比较相邻的两个数,将小数放在前面 ...

  5. 排序 时间倒序_经典排序算法之冒泡排序(Bubble Sort)

    冒泡排序 ( Bubble Sort ) 冒泡排序,正如它的名字一样,未排序数组中的最大(小)值会依次往上浮.冒泡排序主要有两个基本步骤:相邻元素之间的比较 和 交换位置. 步骤分析: 令待排序序列为 ...

  6. Equalizing Two Strings 冒泡排序or树状数组

    首先考虑排序后相等 如果排序后相等的话就只考虑reverse长度为2的,所以a或者b排序后存在相邻两个字母相等的话就puts YES,n>26也直接puts YES 不然的话就假设c为a,b排完 ...

  7. java冒泡排序_Java中的经典算法之冒泡排序(Bubble Sort)

    原理:比较两个相邻的元素,将值大的元素交换至右端. 思路:依次比较相邻的两个数,将小数放在前面,大数放在后面.即在第一趟:首先比较第1个和第2个数,将小数放前,大数放后.然后比较第2个数和第3个数,将 ...

  8. python冒泡排序与常用数学计算

    一 .冒泡排序: 冒泡排序: 属于交换排序; 两两比较大小,交换位置,如同水泡大的往上(右)跑; n个数从左至右编号从0到n-1,索引0和1比较,如果索引0大,则交换两者位置; 如果索引1大则不用交换 ...

  9. Console-算法-冒泡排序法|倒水法

    ylbtech-Arithmetic:Console-算法-冒泡排序法|倒水法 1.A,案例 -- ================================================== ...

  10. java 冒泡排序和快速排序 实现

    面试的时候经常会遇到面试官让你直接手写排序算法,下面是冒泡排序和快速排序的实现. 冒泡排序 基本流程就是,自下而上比较相邻的两个元素进行比较,让大的元素往下面沉,较小的往上冒.按照排序规则进行比较,如 ...

最新文章

  1. Json文件解析(上)
  2. php设置at定时,laravel定时任务
  3. Delphi XE2 新控件 布局Panel TGridPanel TFlowPanel
  4. boost::mpl模块实现comparison相关的测试程序
  5. Linux install innotop
  6. nodpad 设置护眼_Notepad++更改背景颜色(护眼色)
  7. 机器学习面试(作者面了8家公司,它们问了如下题目......)
  8. AC+AP组网和MESH组网介绍和区别
  9. python生成二维码_python生成二维码的实例详解
  10. 浅谈RSTP的快速收敛机制 P/A机制
  11. 大话计算机张冬pdf扫描分享,第一章 【PMC分享】《大话存储》作者张冬:OpenPower CAPI简析.pdfx.pdf...
  12. 爱代挂前台模板5绿色版
  13. U盘, USB读卡器, U盘读卡器三者技术分析区别
  14. 免费分享《精通C#游戏编程》
  15. html布局属性,hTML之FLEX布局属性
  16. 多媒体——视频——利用视频视图VideoView播放视频
  17. maven中的命令行命令
  18. 2021-03-26:给定一个正整数N,表示有N份青草统一堆放在仓库里。有一只牛和一只羊,牛先吃,羊后吃,它俩轮流吃草。 不管是牛还是羊,每一轮能吃的草量必须是:1,4,16,64…(4的某次方)。谁
  19. 联想服务器TS130主板芯片组,【ThinkServer TS130配置】ThinkServer TS130塔式服务器配置-ZOL中关村在线...
  20. 南大计算机跨专业考研,GitHub - weizhang27/NJU-CS-Kaoyan: 南京大学计算机考研相关问题...

热门文章

  1. 对于机械键盘的一些见解(转载)
  2. Android模拟器打不开或者模拟器找不到
  3. 3dmax 8.0 简体中文免安装版
  4. 罗技键盘k380按键修复
  5. html5界面设计教程,HTML5+CSS3网站设计基础教程
  6. 【云计算学习教程】与云计算相关的开源软件有哪些?
  7. STM32调试问题:无法读写 AT24C256 数据
  8. ClassLoader整理总结
  9. java偶数的表达式_十六进制数大于10的正则表达式,在Java中长度应为偶数。
  10. Writing a Linux Keylogger in C