可以使用Python库中的timeit模块来测试代码的执行时间,以便找出哪些代码片段导致了性能问题。同时可以考虑使用一些优化算法,如动态规划等来提高代码的运行效率。
示例代码:
import timeit
def test_sort(): setup = """ import random data = [random.randint(0, 100) for i in range(100)] """
# 测试冒泡排序算法
stmt_bubble = """
def bubble_sort(data):
for i in range(len(data)-1):
for j in range(i, len(data)):
if data[i] > data[j]:
data[i], data[j] = data[j], data[i]
bubble_sort(data)
"""
result_bubble = timeit.timeit(setup=setup, stmt=stmt_bubble, number=1000)
# 测试快速排序算法
stmt_quick = """
def quick_sort(data):
if len(data) <= 1:
return data
pivot = data[0]
left = [i for i in data[1:] if i <= pivot]
right = [i for i in data[1:] if i > pivot]
return quick_sort(left) + [pivot] + quick_sort(right)
quick_sort(data)
"""
result_quick = timeit.timeit(setup=setup, stmt=stmt_quick, number=1000)
print("Bubble sort cost: ", result_bubble)
print("Quick sort cost: ", result_quick)
test_sort()