私はこのコードを持っています:
Array = [9, 8, 7, 6, 5, 4, 3, 2, 1, 0]
for c in range(1, len(Array)):
if(Array[c]==-1):
continue
temp = Array[c]
i = c
d = c-1
while(d>=0):
if(Array[d]==-1):
d-=1
continue
if(temp>=Array[d]):
break
Array[i] = Array[d]
i = d
d-=1
Array[i] = temp
書かれているとおりにコードを実行すると、最終的な配列は次のようになります。
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
ただし、最後の行を「Array[i] = temp」ではなく「Array[i] = Array[c]」に変更すると、最終的な配列は次のようになります。
[9, 9, 9, 9, 9, 9, 9, 9, 9, 9]
これは私には意味がありません。「temp」が Array[c] の場合、その行を変更するとこの違いが生じるのはなぜですか?