import java.util.Arrays; /** * @Auther: 么么 * @Date: 2023/5/8 - 05 - 08 - 22:16 * @Description: PACKAGE_NAME * @version: 1.0 */ //冒泡排序 public class test02 { //这是一个main方法,是程序的入口: public static void main(String[] args) { int[] arr={4,2,3,7,5,1,9,8}; int[] sort = sort(arr); System.out.println(Arrays.toString(arr)); } //数组为空 或者 长度为 1 则直接返回该数组 public static int[] sort(int [] arr){ if(arr==null||arr.length<2){ return arr; } for(int i =0;i<arr.length-1;i++){ //设置flag值,当一趟下来没有交换任何数,说明数组已经有序了,将flag设为false boolean flag = true; for(int j=1;j<arr.length-i;j++){ if(arr[j-1]>arr[j]){ swap(arr,j-1,j); flag=false; } } if(flag){ return arr; } } return arr; } //异或运算--i不能等于j 及作与运算的俩个数值可以相同,但不能为相同的地址 //不明白的:见我的文章 --》异或运算 public static void swap(int arr[],int i,int j){ arr[i] = arr[i]^arr[j]; arr[j] = arr[i]^arr[j]; arr[i] = arr[i]^arr[j]; } }
标签:sort,arr,int,冒泡排序,static,public From: https://www.cnblogs.com/me-me/p/17386477.html