冒泡排序
一个简单的算法,可以用来使数组进行有序的排列,因为神似水中气泡上升,所以叫 冒泡排序
第一种写法
第一种写法
// 冒泡排序
public class Test1 {
public static void main(String[] args) {
int[] arr= {10,9,8,7,33,22,11,};
for(int i=0;i<arr.length;i++) {
for(int j=0;j<arr.length;j++) {
if(arr[i]>arr[j]) {
int temp=arr[i];
arr[i]=arr[j];
arr[j]=temp;
}
}
}
for(int i=0;i<arr.length;i++) {
//输出数组
System.out.println(arr[i]);
}
}
}
第二种写法
第二种写法
数组成员相邻之间对比
public class Test2 {
public static void main(String[] args) {
int[] arr= {10,9,8,7,33,22,11,};
for(int i=0;i<arr.length;i++) {
for(int j=0;j<arr.length-1;j++) {
if(arr[i]>arr[j]) {
int temp=arr[j];
arr[j]=arr[j+1];
arr[j+1]=temp;
}
}
}
for(int i=0;i<arr.length;i++) {
System.out.println(arr[i]);
}
}
}
注意
for(int j=0;j<arr.length-1;j++)
这里是length-1,容易出下标出界的错
ArrayIndexOutOfBoundsException //这个报错就是下标越界
ps:
这是第二次在CSDN上发博客,上次还是4年前,自从19年末疫情爆发,许多事情都从原来应有的轨迹上改变了...