视频解析 https://edu.csdn.net/course/play/7813
在电视剧中士兵排队时,按个子高的和个子矮的的顺序进行排列,个子高的和个子矮的会进行两两进行比较。
冒泡排序:
其基本思想是重复的进行整个数组的排序,一次比较两个元素(两两排序),如果它们顺序不符合就交换,重复这样直到数列没有再需要交换的数为止(结束条件)。
因为它就好像气泡一样,轻的气泡会往上漂浮,在不断漂浮的过程中,发生了两两交换过程,所以叫冒泡排序。
/** * * @author 张晨光 * */ public class SortDemo { //公共静态成员变量 public static int[]arr={5,2,6,7,3}; public static int[] sort(int[]arr){ int n=arr.length; int temp; for(int i=0;i<n;i++){ for(int j=0;j<n-1;j++){ if(arr[j]>arr[j+1]){ //交换 temp=arr[j]; arr[j]=arr[j+1]; arr[j+1]=temp; } } } return arr; } /** * 插入排序 */ public static void insertSort(){ } /** * 顺序输出数组元素; */ public static void printArray(int []arr){ for(int num:arr){ System.out.print(num+"\t"); } System.out.println(); } /** * main方法 */ public static void main(String[] args) { SortDemo.sort(arr); SortDemo.printArray(arr); } }
应对面试排序的口诀记忆法:
N个数字来排序,
两两比较小靠前;
外层循环n-1,
内层循环n-1-9;