对给定的整数序列(541,132,984,746,518,181,946,314,205,827)进行从小到大的排序时,采用快速排序(以中间元素518为基准)的第一趟扫描结果是
A.(181,132,314,205,541,518,946,827,746,984)
B.(541,132,827,746,518,181,946,314,205,984)
C.(205,132,314,181,518,746,946,984,541,827)
D.(541,132,984,746,827,181,946,314,205,518)
我算出来是(205,132,314,181,518,541,946,746,984,827)和答案不一样。
我肯定是详细步骤错了呢,能帮我详细说明一下吗?我加50分
追答我查了一下,不是国考的题目,而考试的目的就象考堆判断一样,它与原给定的数组的顺序根本无关,更准确的说这道题只给四个答案,假定518是给定数据的第一个数,快速排序的结果就是把给定的数据分成两大块,一块比它都小,一块比它都大。这就是考试的目的。
所以答案是C.(205,132,314,181,518,746,946,984,541,827)
这要是国考的话绝对不会给出原数据,只给出后面的四个答案,我想你就不会有上面的问题了。
求详解谢谢
追答从左边开始,第一个541比518大;右边205小,换
左边984大,右边314小,换
左边746大,右边181小,换
左右碰头,结束