网站首页 > java教程 正文
冒泡排序是排序算法的一种,思路清晰,代码简洁,常被用在大学生计算机课程中。“冒泡”这个名字的由来是因为越大的元素会经由交换慢慢“浮”到数列的顶端,因此得名。
冒泡算法的C语言实现
以对3 2 4 1进行冒泡排序说明。第一轮 排序过程3 2 4 1 (最初)2 3 4 2 (比较3和2,交换)2 3 4 1 (比较3和4,不交换)2 3 1 4 (比较4和1,交换)第一轮结束,最大的数4已经在最后面,因此第二轮排序只需要对前面三个数进行再比较。第二轮排序过程2 3 1 4 (第一轮排序结果)2 3 1 4(比较2和3,不交换)2 1 3 4(比较3和1,交换第二轮结束,第二大的数已经排在倒数第二个位置,所以第三轮只需要比较前两个元素。第三轮排序过程2 1 3 4 (第二轮排序结果)1 2 3 4 (比较2和1,交换)至此,排序结束。
冒泡算法的Java实现
冒泡算法的PHP实现
以从小到大排序举例:
设数组长度为N。
1.比较相邻的前后二个数据,如果前面数据大于后面的数据,就将二个数据交换。
2.这样对数组的第0个数据到N-1个数据进行一次遍历后,最大的一个数据就“沉”到数组第N-1个位置。
3.N=N-1,如果N不为0就重复前面二步,否则排序完成。
应用实例:
假设咱们有几个杂乱无序的数字:4,3,6,2,1,5,那么要通过冒泡排序来将这几个数字按照从小到大的顺序来排序,要怎么做呢?
思路:拿第一个数字跟其他所有数字进行比较,若比它大则交换位置,直到将这些数字中最大的数字冒到最上面,接着再继续第2轮,第3轮,第4轮,第5轮,直到所有大的数组都冒到了上面,这样所有的数据就会按照从小到大来进行排序。
用代码来实现如下图:
猜你喜欢
- 2024-09-25 Java数组的排序冒泡排序选择排序二种冒泡逆排序
- 2024-09-25 java冒泡排序(Java冒泡排序算法)
- 2024-09-25 好程序员Java学习路线分享冒泡排序及优化
- 2024-09-25 五分钟学会一个初级算法:冒泡排序
- 2024-09-25 Java冒泡排序-大白话解释(java冒泡排序的方法代码)
- 2024-09-25 C#基础语法循环篇:冒泡排序算法讲解(附源码)
- 2024-09-25 排序算法之冒泡排序(冒泡排序 算法)
- 2024-09-25 经典排序算法之——冒泡排序(冒泡排序算法实例)
- 2024-09-25 Java十大排序算法之冒泡排序(java冒泡排序和快速排序)
- 2024-09-25 JAVA手写算法 | 冒泡排序算法(java简单冒泡排序写法)
你 发表评论:
欢迎- 最近发表
-
- Java常量定义防暴指南:从"杀马特"到"高富帅"的华丽转身
- Java接口设计原则与实践:优雅编程的艺术
- java 包管理、访问修饰符、static/final关键字
- Java工程师的代码规范与最佳实践:优雅代码的艺术
- 编写一个java程序(编写一个Java程序计算并输出1到n的阶乘)
- Mycat的搭建以及配置与启动(mycat部署)
- Weblogic 安装 -“不是有效的 JDK Java 主目录”解决办法
- SpringBoot打包部署解析:jar包的生成和结构
- 《Servlet》第05节:创建第一个Servlet程序(HelloSevlet)
- 你认为最简单的单例模式,东西还挺多
- 标签列表
-
- java反编译工具 (77)
- java反射 (57)
- java接口 (61)
- java随机数 (63)
- java7下载 (59)
- java数据结构 (61)
- java 三目运算符 (65)
- java对象转map (63)
- Java继承 (69)
- java字符串替换 (60)
- 快速排序java (59)
- java并发编程 (58)
- java api文档 (60)
- centos安装java (57)
- java调用webservice接口 (61)
- java深拷贝 (61)
- 工厂模式java (59)
- java代理模式 (59)
- java.lang (57)
- java连接mysql数据库 (67)
- java重载 (68)
- java 循环语句 (66)
- java反序列化 (58)
- java时间函数 (60)
- java是值传递还是引用传递 (62)
本文暂时没有评论,来添加一个吧(●'◡'●)