/*
- @Author: sumBorn
- @Date: 2022-02-23 21:57:10
- @Description:
空间复杂度O(N2) 最好:O(N)完全排序
时间复杂度O(1)
稳定排序
逆序对数量越多,时间复杂度越高
*/
/**
@description:
@param {*}
-
@return {*}
*/
public class Solution
{
public int[] InsertionSort(int[] arr)
{
for (int i = 1; i < arr.Length; i++)
{
for (int j = i; j > 0; j--)
{
if (arr[j - 1] > arr[j])
{
this.Swap(j - 1, j, arr);
}
}
}return arr;}
public void Swap(int i, int j, int[] arr)
{
var tmp = arr[i];
arr[i] = arr[j];
arr[j] = tmp;
}
}
该博客介绍了插入排序的Java实现,详细讲解了其空间和时间复杂度,并指出在逆序对较多的情况下时间复杂度会提高。插入排序是一种稳定的排序算法,最佳情况下的时间复杂度为O(N)。
7690

被折叠的 条评论
为什么被折叠?



