快速排序问题.
发布网友
发布时间:2022-05-14 04:39
我来回答
共2个回答
热心网友
时间:2024-01-11 04:03
快速排序的实现基于分治法,具体分为三个步骤。假设待排序的序列为L[m..n]。
分解:序列L[m .. n]被划分成两个可能为空的子序列L[m .. pivot-1]和L[pivot+1 .. n],使L[m .. pivot-1]的每个元素均小于或等于L[pivot],同时L[pivot+1.. n]的每个元素均大于L[pivot]。其中L[pivot]称为这一趟分割中的主元(也称为枢轴、支点)。
解决:通过递归调用快速排序,对子序列L[m .. pivot-1]和L[pivot+1 .. r]排序。
合并:由于两个子序列是就地排序的,所以对它们的合并不需要操作,整个序列L[m .. n]已排好
以中间元素518为基准就是518为枢轴,左边都是比它小得 有边都是比它大的 具体结果你自己做了 这种题目是最基本的了
热心网友
时间:2024-01-11 04:04
这问题你也问,你要真想稿程序算法,这些基础问题就自己找本书研究一下。