回答此问题可获得 20 贡献值,回答如果被采纳可获得 50 分。
<p>我试图实现Python合并排序,但在某些方面失败了。我得到的伪代码是准确的,但看起来它是为另一种语言而构建的。在</p>
<p>pseudo需要以下内容<br/>
/声明输入数组a大小的数组temp</p>
<p>我不确定这在Python中是如何实现的。总之,代码在下面。
整个想法是我需要对数组/列表进行排序并返回排序后的数组/列表。在</p>
<p>到目前为止,它失败的消息如下。我想说这是因为新的temp数组/列表,但我不确定</p>
<pre><code>Traceback (most recent call last):
File "./mergesort", line 56, in <module>
main()
File "./mergesort", line 52, in main
mergesortbase(array)
File "./mergesort", line 4, in mergesortbase
mergesort(num, 0, len(num)-1)
File "./mergesort", line 10, in mergesort
mergesort(num, low, mid)
File "./mergesort", line 10, in mergesort
mergesort(num, low, mid)
File "./mergesort", line 12, in mergesort
merge(num, low, mid, mid+1, high)
File "./mergesort", line 27, in merge
temp[k] = a[j]
IndexError: list assignment index out of range
</code></pre>
<p>注意:对代码进行彻底的修改是没有帮助的,因为我需要使用完全相同的伪代码。在</p>
^{pr2}$