演算法實驗1(插入排序)
阿新 • • 發佈:2022-04-15
1 while True: 2 str_in = input('請以空格為間隔連續輸入一個數組:') 3 a = [int(n) for n in str_in.split()] 4 for j in range(1,len(a)): 5 key = a[j] 6 i = j-1 7 while i>=0 and a[i]>key: 8 a[i+1] = a[i] 9 i = i-1 10 a[i+1] = key 11 12for k in range(len(a)): 13 print(a[k]) 14 print('=======================')
知識點:
1、從鍵盤連續輸入一個數組,並用空格隔開(得到的是一個字串,而不是列表)
str_in = input('請以空格為間隔連續輸入一個數組:')
轉換成列表:
(法1)
num = [int(n) for n in str_in.split()]
(法2)
num =list(map(int, str_in.strip().split()))
上面那個語句也要有,合起來用
注意 ,因為int函式不能對列表操作,只能對的單個字元操作,另外,如果以其他字元為間隔,如逗號,則其中的split()改為split(‘,')即可
參考資料:https://www.jb51.net/article/150751.htm