冒泡排序

1 问题

利用Java实现冒泡排序。

2 方法

1.定义一个数组储存一写乱序数字

2.循环遍历数组

3.N个数字要排序完成,总共进行N-1趟排序,每i趟的排序次数为(N-i)次,所以可以用双重循环语句,外层控制循环多少趟,内层控制每一趟的循环次数。利用外层循环控制排序的趟数,数组长度为6,所以循环5次

4.这里内层循环要比外层循环少一次,就类似于外层循环从第一个数字开始,内层循环从第二个数字开始。两个数字之间进行比较大小,定义一个最大值,将大的数字就赋值给最大值,依次类推找出数组中最大的值

5.最后输出排序好的数组,由大到小排序

代码清单 1

|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| package Lq_project; public class Maopao { public static void main(String[] args) { int[] arr= {4,3,6,2,8,1};//定义一个数组 System.out.println("排序前数组为:"); //遍历循环 for(int num:arr) { num=arr[i];num<arr.length;num++){} System.out.println(num+""); } for(int i=0;i<arr.length-1;i++) { //内层循环控制每一次排序多少次,内层循环要比外层循环少一次 for(int j=0;j<arr.length-1-i;j++) { if(arr[j]>arr[j+1]) { int max=arr[j];//获取最值 arr[j]=arr[j+1];//赋值 arr[j+1]=max; } } } System.out.println(); System.out.println("排序后的数组为:"); for(int num:arr) { System.out.println(num+""); } } } |

3 结语

这次利用Java实现冒泡排序,可以加快对Java的掌握,还可以温习课堂所讲。冒泡排序是一种简单的排序算法,它重复地遍历要排序的数列,一次比较两个元素,如果它们的顺序错误就把它们交换过来。通过多次的遍历,将最大的数逐渐往后移动,直到排序完成。

相关推荐
007php0071 分钟前
百度面试题解析:Zookeeper、ArrayList、生产者消费者模型及多线程(二)
java·分布式·zookeeper·云原生·职场和发展·eureka·java-zookeeper
嵌入式-老费6 分钟前
Easyx图形库应用(和lua结合使用)
开发语言·lua
AsiaLYF7 分钟前
kotlin中MutableStateFlow和MutableSharedFlow的区别是什么?
android·开发语言·kotlin
Asuncion00718 分钟前
Docker核心揭秘:轻量级虚拟化的革命
服务器·开发语言·docker·云原生
4Forsee29 分钟前
【Android】浅析 Android 的 IPC 跨进程通信机制
android·java
来旺42 分钟前
互联网大厂Java面试全解析及三轮问答专项
java·数据库·spring boot·安全·缓存·微服务·面试
Json____43 分钟前
使用node Express 框架框架开发一个前后端分离的二手交易平台项目。
java·前端·express
since �43 分钟前
前端转Java,从0到1学习教程
java·前端·学习
詩句☾⋆᭄南笙44 分钟前
Mybatis一对一、一对多
java·mybatis·resulttype·resultmap·一对多·一对一
深思慎考1 小时前
RabbitMQ 入门:基于 AMQP-CPP 的 C++ 实践指南与二次封装
开发语言·c++·分布式·rabbitmq·api