昇順ソート(昇順ソート)-2


ソートの挿入(ソートの挿入)


Pythonで書いてみます.
# insertion sort
x = [1, 10, 5, 8, 7, 6, 4, 3, 2, 9]
for j in range(1, len(x)):
    for i in range(j, 0, -1):
        if x[i] < x[i-1]:
            x[i], x[i-1] = x[i-1], x[i]

print(x)
  • は、
  • のように1つずつ並べられ、現在の位置のみで数字の大きさを左に比較する.
  • 私より小さい数字に出会ったら、その位置にあります(値は位置を見つける方法です).
  • 大五段階(時間複雑度):O(N^2)
  • 効率
    : insertion sort > selection sort > bubble sort