[-1, 1, 3, 4, 9, 6, 2]
# !/user/bin/env python
def main():
list = [1, 3, 4, 9, 6, 2, -1]
for i in range(len(list) - 1):
min = list[i]
k = i
for j in range((i+1), len(list)):
if min > list[j]:
min = list[j]
k = j
tmp = list[i]
list[i] = list[k]
list[k] = tmp
print(list)
if __name__ == '__main__':
main()
ソート前 : [1, 3, 4, 9, 6, 2, -1]
ソート後 : [-1, 1, 2, 3, 4, 6, 9]
[1, 3, 4, 9, 6, 2, -1]から最小値を選んで先頭から並べていく。
最小値を’ ‘で囲ってます。
[1, 3, 4, 9, 6, 2, ‘-1’] → [‘-1’, 1, 3, 4, 9, 6, 2]
[-1, ‘1’, 3, 4, 9, 6, 2] → [-1, ‘1’, 3, 4, 9, 6, 2]
[-1, 1, 3, 4, 9, 6, ‘2’] → [-1, 1, ‘2’, 3, 4, 9, 6]
…
[-1, 1, 2, 3, 4, 6, 9]
デメリットとして処理速度が遅いです。バブルソートよりは、すこし早いです。