下面是一个使用 Python 实现的快速排序算法的测试程序:
def quicksort(arr):
if len(arr) <= 1:
return arr
else:
pivot = arr[0]
less = [x for x in arr[1:] if x <= pivot]
greater = [x for x in arr[1:] if x > pivot]
return quicksort(less) + [pivot] + quicksort(greater)
def test_quicksort():
arr=[12,11,34,45,67,90,10,20,35,67,78]
print(quicksort(arr))
if __name__ == "__main__":
test_quicksort()
[10, 11, 12, 20, 34, 35, 45, 67, 67, 78, 90]
这个测试程序会随机生成一个长度为 100 的数组,对数组进行排序,并验证快速排序算法的正确性。同时,它还会测试一些边界情况,例如空数组和只有一个元素的数组。如果所有测试都通过了,程序会输出 “Quicksort test passed”。
微信Alt+A截屏工具
pycharm 2019.2