
每天记录学习的新知识:冒泡排序
发布日期:2021-05-10 05:22:51
浏览次数:17
分类:精选文章
本文共 869 字,大约阅读时间需要 2 分钟。
Principle:
比较两个相邻的元素,将值大的元素交换至右端。
Core:
N个数字要排序完成,总共进行N-1趟排序,每i趟的排序次数为(N-i)次,所以可以用双重循环语句,外层控制循环多少趟,内层控制每一趟的循环次数
Usage Method:
依次比较相邻的两个数,将小数放在前面,大数放在后面。即在第一趟:首先比较第1个和第2个数,将小数放前,大数放后。然后比较第2个数和第3个数,将小数放前,大数放后,如此继续,直至比较最后两个数,将小数放前,大数放后。重复第一趟步骤,直至全部排序完成。
第一趟比较完成后,最后一个数一定是数组中最大的一个数,所以第二趟比较的时候最后一个数不参与比较;
第二趟比较完成后,倒数第二个数也一定是数组中第二大的数,所以第三趟比较的时候最后两个数不参与比较;
依次类推,每一趟比较次数-1;
……
Example:
/* * 冒泡排序 */public class BubbleSort { public static void main(String[] args) { int[] arr={6,3,8,2,9,1}; System.out.println("排序前数组为:"); for(int num:arr){ System.out.print(num+" "); } for(int i=0;iarr[j+1]){ int temp=arr[j]; arr[j]=arr[j+1]; arr[j+1]=temp; } } } System.out.println(); System.out.println("排序后的数组为:"); for(int num:arr){ System.out.print(num+" "); } } }
Java中的经典算法之冒泡排序(Bubble Sort)
发表评论
最新留言
关注你微信了!
[***.104.42.241]2025年04月16日 23时50分59秒
关于作者

喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
微信小程序 - 实现左滑动删除功能
2021-05-10
<s>
2021-05-10
常见错误
2021-05-10
finger
2021-05-10
实例属性和类属性
2021-05-10
Oracle
2021-05-10
序列化与反序列化
2021-05-10
错误总结
2021-05-10
如何使用linux系统自带的led驱动
2021-05-10
泛知识类视频会改变短视频行业格局吗?
2021-05-10
IP-Guard回收客户端加密授权,已经加密的文档如何解密
2021-05-10
IP-GUARD支持的数据库版本
2021-05-10
a*算法伪代码及实现
2021-05-10
第十一节 IO编程
2021-05-10
十八、flask之g对象
2021-05-10
GIT学习笔记
2021-05-10
Linux系统调用过程
2021-05-10
stm32 uv5打开uv4工程错误
2021-05-10
mysql怎么终止一个事务_MySql 中游标,事务,终止存储过程方法总结
2021-05-10