擅长:python、mysql、java
<p>你的书例不太像Python。你知道吗</p>
<p>这称为插入排序。这可能有助于了解它如何与动画一起工作。看看这个网站(确保选择插入[<strong>INS</strong>]排序):<a href="https://visualgo.net/bn/sorting" rel="nofollow noreferrer">https://visualgo.net/bn/sorting</a></p>
<p>也就是说,密切关注while循环语句<code>sequence[j-1] > item</code>中的<code>></code>。这是我的暗示。你知道吗</p>
<pre><code>sequence = [5,-2,0,6,10,-5,1]
def myInsertionSort(sequence):
for i in range (1, len(sequence)):
item = sequence[i]
j = i
while j > 0 and sequence[j-1] < item:
sequence[j] = sequence[j-1]
j -= 1
sequence[j] = item
return sequence
myInsertionSort(sequence)
</code></pre>
<p>如果让它更容易阅读,这里有一个例子写得有点不同:</p>
<pre><code>sequence = [5,-2,0,6,10,-5,1]
def myInsertionSort(sequence):
for j in range (1, len(sequence)):
while j > 0 and sequence[j-1] > sequence[j]:
sequence[j], sequence[j-1] = sequence[j-1], sequence[j] # Flip the elements
j -= 1 # Move down one index
return sequence
print(myInsertionSort(sequence))
</code></pre>