插入排序(打牌排序):
- 时间复杂度:O(N^2)
- 空间复杂度:O(1)
- 稳定性:稳定
- 编写难度:easy
- 辅助理解:想象出打牌,从左往右拿待比较牌,从右往左拿比较牌
//升序
public static void insertionSort(int []arr){
if(arr==null||arr.length<2){return ;}
for(int i = 0;i<arr.length-1;i++){//从左往右拿牌,且
for(int j = i-1;j>=0&&arr[j]>arr[j+1];j--){//从断开处,从右到左拿牌比较,不一定会走完,因为他是从无一步一步排序走好的,左边渐渐的大致有序,走路到一半是会断的。
swap(arr,j,j+1);
}
}