当前位置: 首页 > news >正文

八大排序--01冒泡排序

 假设有一组数据 arr[]={2,0,3,4,5,7}

方法:开辟两个指针,指向如图,前后两两进行比较,大数据向后冒泡传递,小数据换到前面。

一次冒泡后,数组中最大的数据将到达正确位置。

for(int i=0;i<arr.length-1;i++) {if(arr[i]>arr[i+1]) {//进行交换int temp =arr[i];arr[i]=arr[i+1];arr[i+1]=temp;}
}

要想让所有数据 到达正确位置,循环进行j次:

for(int j=0;j<arr.length;j++) {for(int i=0;i<arr.length-1-j;i++) {if(arr[i]>arr[i+1]) {//进行交换int temp =arr[i];arr[i]=arr[i+1];arr[i+1]=temp;}}}

完整代码:

package Java.start;import java.util.Arrays;import com.sun.xml.internal.bind.v2.runtime.unmarshaller.XsiNilLoader.Array;public class BubbleSort {//冒泡排序public static void main(String[] args) {int[] arr= {2,0,3,4,5,7};sort(arr);System.out.println(Arrays.toString(arr));//		for(int i=0;i<arr.length;i++) {
//			System.out.println(arr[i]);
//		}}public static void sort(int[] arr) {for(int j=0;j<arr.length;j++) {for(int i=0;i<arr.length-1-j;i++) {if(arr[i]>arr[i+1]) {//进行交换int temp =arr[i];arr[i]=arr[i+1];arr[i+1]=temp;}}}}}

结果:

 


http://www.mrgr.cn/news/43569.html

相关文章:

  • 基于keras的停车场车位识别
  • GoogleNet原理与实战
  • 内存缓存和硬盘缓存
  • 如何实现事件流操作
  • Mysql数据库约束
  • 【信息系统项目管理师考题预测】整合管理
  • 如何在 SQL 中创建一个新的数据库?
  • 【Codeforces】CF 2019C
  • AtCoder Beginner Contest 374 E题 Sensor Optimization Dilemma 2(二分,贪心)
  • Qt教程(002):Qt项目创建于框架介绍
  • 保险丝基础知识
  • 【深度学习】矩阵操作万能函数 einsum-爱因斯坦求和
  • 如何使用CMD命令启动应用程序(二)
  • C0015.Clion中开发C++时,连接Mysql数据库方法
  • 【英特尔IA-32架构软件开发者开发手册第3卷:系统编程指南】2001年版翻译,1-1
  • 《python语言程序设计》2018版第8章19题几何Rectangle2D类(下)-头疼的几何和数学
  • 传感器模块编程实践(三)舵机+超声波模块融合DIY智能垃圾桶模型
  • 常见的基础系统
  • 今天学的Word小技巧——批量设置图片格式,批量让题注居中
  • 软考系统分析师知识点二:经济管理