八大排序-冒泡排序(一)
- 冒泡排序原理:数组元素两两比较,交换位置,大元素往后放,那么经过一轮比较后,最大的元素,就会出现在最大索引处。
-
具体代码:
//冒牌排序 public class ArrayDemo { public static void main(String[] args) { //排序原理:数组元素两两比较,交换位置,大元素往后放,那么经过一轮比较后,最大的元素,就会出现在最大索引处 int[] arr = {24,69,80,57,13};//待排序数组 //tuiDao(arr); for (int j = 0; j < arr.length-1; j++) { for (int i = 0; i < arr.length-1-j; i++) { if (arr[i]>arr[i+1]){ //交换位置 int t=arr[i]; arr[i]=arr[i+1]; arr[i+1]=t; } } } System.out.println(Arrays.toString(arr)); } private static void tuiDao(int[] arr) { //第一轮比较 for (int i = 0; i < arr.length-1; i++) { if (arr[i]>arr[i+1]){ //交换位置 int t=arr[i]; arr[i]=arr[i+1]; arr[i+1]=t; } } //第二轮比较 for (int i = 0; i < arr.length-1-1; i++) { if (arr[i]>arr[i+1]){ //交换位置 int t=arr[i]; arr[i]=arr[i+1]; arr[i+1]=t; } } //第三轮比较 for (int i = 0; i < arr.length-1-1-1; i++) { if (arr[i]>arr[i+1]){ //交换位置 int t=arr[i]; arr[i]=arr[i+1]; arr[i+1]=t; } } //第四轮比较 for (int i = 0; i < arr.length-1-1-1-1; i++) { if (arr[i]>arr[i+1]){ //交换位置 int t=arr[i]; arr[i]=arr[i+1]; arr[i+1]=t; } } } } //Alt+Ctrl+M 快捷键定义一小段代码的方法