算法复杂度:
时间复杂度:
平均情况 | 最好情况 | 最坏情况 |
---|---|---|
O(n^2) | O(n) | O(n^2) |
空间复杂度:
O(1)
lua语言排序实现:
function inserSort(arr)
for i = 2, #arr do
if arr[i - 1] > arr[i] then
local tmp = arr[i]
local idx = i - 1
for j = idx, 1, -1 do
if arr[j] > tmp then
arr[j + 1] = arr[j]
else
break
end
idx = j
end
arr[idx] = tmp
end
end
end