概述
快速排序是程序员入职笔试常考的题目:
快排的核心思想就是:经过一趟交换排序,使得比基准小的数都在其左侧,比基准大的数都在其右侧。
【例题|唯品会】一组记录的关键值为(46,79,56,38,40,84),则利用快速排序的方法,以第一个记录的关键值46为基准得到的一次划分结果为()。
原式:46,79,56,38,40,84
1、基于原式,以46作为基准
46 79 56 38 40 84 自84开始,从右到左找比46小的数,找到了“40”
40 79 56 38 46 84 交换得序列①式
2、基于①式,以46作为基准
40 79 56 38 46 84 自40开始,从左到右找比46大的数,找到了“79”
40 46 56 38 79 84 交换得序列②式
3、基于②式,以46作为基准
40 46 56 38 79 84 自79开始,从右到左找比46小的数,找到了“38”
40 38 56 46 79 84 交换得序列③式
4、基于③式,以46作为基准
40 38 56 46 79 84 自38开始,从左到右找比46大的数,找到了“56”
40 38 46 56 79 84 交换得到序列④式
第一趟排序结束,得到题目的答案40 38 46 56 79 84
特征:此时,46(基准或叫枢轴)的左边的数都小于自己,右边的数都大于自己。
最后
以上就是酷炫小甜瓜为你收集整理的【校招】快速排序题解的全部内容,希望文章能够帮你解决【校招】快速排序题解所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复