Python 練習例39

Python 100例

問題:ソート済みの配列があります。今、1つの数値を入力して、元の規則に従ってそれを配列に挿入します。

プログラム分析:まず、この数が最後の数より大きいかどうかを判断し、次に中央の数に挿入する場合を考えます。挿入後、この要素より後ろの数は順に1つ後ろへ移動します。

プログラムのソースコード:

例(Python 2.0+)

#!/usr/bin/python # -*- coding: UTF-8 -*- if __name__ == '__main__': # 方法1 : 0 を挿入する数字のプレースホルダーとして使用 a = [1,4,6,9,13,16,19,28,40,100,0] print ('元のリスト:') for i in range(len(a)): print (a[i]) number = int(input("\n数字を挿入:\n")) end = a[9] if number > end: a[10] = number else: for i in range(10): if a[i] > number: temp1 = a[i] a[i] = number for j in range(i + 1,11): temp2 = a[j] a[j] = temp1 temp1 = temp2 break print ('ソート後のリスト:') for i in range(11): print (a[i])

上記の例の出力結果:

原始列表:
1
4
6
9
13
16
19
28
40
100
0

插入一个数字:
7
排序后列表:
1
4
6
7
9
13
16
19
28
40
100

Python 100例

その他の拡張