冒泡排序:学习笔记分享~
冒泡排序
假设对 长度为5的整型数组进行冒泡排序
int[] arr = new int[ ]{11,13,8,3,1 }
找规律:5个元素进行比较
第一轮:分别比较相邻元素的大小,大的元素放后面,结果:11,8,3,1,13
第二轮:比较的结果为8,3,1,11,13
第三轮:比较的结果为:3,1,8,11,13
第四轮:比较的结果为:1,3,8,11,13
总结:
5个元素比较了4轮:所以n个元素要比价n-1轮
元素之间的比价规律:也为n-1次,随着轮次的递增而递减
public class BubbleSort {
public static void main(String[] args) {
int[] arr = new int[8];
for (int i=0;i<arr.length;i++){
arr[i] = (int)(Math.random()*100+1);
}
for (int i = 0; i < arr.length; i++) {
System.out.print(arr[i]+" ");
}
System.out.println();
for (int i=1;i<arr.length;i++){
for(int j=0;j<arr.length-i;j++){
if(arr[j]>arr[j+1]){
int temp = arr[j];
arr[j] = arr[j+1];
arr[j+1] =temp;
}
}
}
for (int i = 0; i < arr.length; i++) {
System.out.print(arr[i]+" ");
}
}
}
代码采用随机生成的8个元素的数组。
浙公网安备 33010602011771号