quick sort是一種分治的思想
分治法的基本思想
分治法的基本思想是:将原问题分解为若干个规模更小但结构与原问题相似的子问题。递归地解这些子问题,然后将这些子问题的解组合为原问题的解。
seq = seq_a + [k] + seq_b
all item in seq_a < k
all item in seq_b > k
def quicksort(seq):
if len(seq) <= 1:
return seq
k = seq[0]
seq_a, seq_b = [], []
for i in range(1, len(seq)):
if seq[i] >= k:
seq_b.append(seq[i])
else:
seq_a.append(seq[i])
print seq_a, seq_b
return quicksort(seq_a)+ [k] + quicksort(seq_b)
本文深入探讨了快速排序算法的核心思想,通过分治法将原问题分解为规模更小的子问题,并提供了具体实现代码。同时,展示了如何通过递归调用自身解决子问题,最终合并结果得到原问题的解决方案。
524

被折叠的 条评论
为什么被折叠?



