我有两个单独的函数来打印数组排序的比较计数(插入、排序和快速排序)。在这些函数中,我用4个不同的列表调用了4次排序规则。
Alg. / Comparison count: l=10 l=100 l=1000 l=10000
Insertion-sort: 18 198 1998 19998
Alg. / Comparison count: l=10 l=100 l=1000 l=10000
Quick-sort: 41 797 13392 214916问题是我只能调用这些函数中的一个,如果我同时调用两个函数,则在快速排序函数上会出现递归错误
RecursionError: maximum recursion depth exceeded in comparison所以这就是
make_arrays()
print("Alg. / Comparison count:\tl=10\tl=100\tl=1000\tl=10000")
print_comp_insert()还有这个
make_arrays()
print("Alg. / Comparison count:\tl=10\tl=100\tl=1000\tl=10000")
print_comp_quick()工作正常,但是这个
make_arrays()
print("Alg. / Comparison count:\tl=10\tl=100\tl=1000\tl=10000")
print_comp_insert()
print_comp_quick()导致错误。
我真的不明白这里发生了什么。
发布于 2020-12-01 22:16:46
可以进行的递归调用的数量有一个上限。您可以使用以下命令扩展限制:
import sys
sys.setrecursionlimit(<put integer here>)https://stackoverflow.com/questions/65091990
复制相似问题