冒泡算法排序:
先定义一个数组,然后搞一个for循环,控制循环的次数,次数为数组的长度
里面嵌套一个for循环,进行值的比较,如果第一个元素比第二个大就调换位置,小就不懂.动,一直比较比到循环的最后一个,再执行外面的循环,反复比较,将最大的元素排到最后,比较完之后返回数组.
public void ceshi(){
int[] arr = {2,5,1,3,8,5,7,4,3};
int[] a = bubbleSort(arr);
System.out.println(Arrays.toString(a));
}
/**
* 冒泡排序
* @param arr
*/
private static int[] bubbleSort(int[] arr) {
for (int i = 0; i < arr.length - 1; i++) {
for (int j = 0; j < arr.length - i -1; j++) { // 这里说明为什么需要-1
if (arr[j] > arr[j + 1]) {
int temp = arr[j];
arr[j] = arr[j + 1];
arr[j + 1] = temp;
}
}
}
return arr;
}
网友评论