数据结构(快速排序)


最近学习数据结构,学习到了快速排序。利用BLOG记录一下自己的学习。免去纸面记录的麻烦。

快速排序又称为:分划交换排序或分治法

分治的原理:

(1)分解:将原来的问题分解为几个子问题。
(2)求解:递归的解决各个子问题,当规模足够小的时候便可以直接进行求解。
(3)组合:将子问题的解组合为原问题的解。

快排的算法思想:

    快排需要一个基准点(枢轴/支点/基准记录),就是算法开始的参考,一般来说取数据点的第一个作为基准。每一趟排序的目的就是使得基准点到达一个逻辑归中的位置,就是说左边的记录全部都小于基准,右边全部大于基准,然后再处理左边和右边的子序列,直到所有序列规模很小时候可以直接进行排序。至于如何实现得到子序列,在序列的两端分别进行从左向右寻找比基准大的数和从右向左找比基准小的数,直到左边和右边寻找相遇,视为第一趟结束。直到所有的数都归到了所在的基准位,则快速排序结束,数据也变成了有序的。

快速排序快的原因在于他的交换是跳跃的而不是顺序的,和冒泡法不同的是,快排中更加强调先查询后再进行交换,而不是一味的莽夫一样的交换,因此快速排序的最差时间复杂度是O(N2)平均时间复杂度为O(NlogN)。






全部评论

相关推荐

点赞 收藏 评论
分享
正在热议
# 牛客帮帮团来啦!有问必答 #
1154444次浏览 17184人参与
# 通信和硬件还有转码的必要吗 #
11306次浏览 101人参与
# OPPO开奖 #
19550次浏览 271人参与
# 和牛牛一起刷题打卡 #
19285次浏览 1649人参与
# 实习与准备秋招该如何平衡 #
203686次浏览 3629人参与
# 大厂无回复,继续等待还是奔赴小厂 #
5179次浏览 35人参与
# 不去互联网可以去金融科技 #
21329次浏览 260人参与
# 通信硬件薪资爆料 #
266300次浏览 2485人参与
# 国企是理工四大天坑的最好选择吗 #
2251次浏览 34人参与
# 互联网公司评价 #
97835次浏览 1280人参与
# 简历无回复,你会继续海投还是优化再投? #
25064次浏览 354人参与
# 0offer是寒冬太冷还是我太菜 #
455211次浏览 5133人参与
# 国企和大厂硬件兄弟怎么选? #
53969次浏览 1013人参与
# 参加过提前批的机械人,你们还参加秋招么 #
14663次浏览 349人参与
# 硬件人的简历怎么写 #
82317次浏览 852人参与
# 面试被问第一学历差时该怎么回答 #
19452次浏览 213人参与
# 你见过最离谱的招聘要求是什么? #
29063次浏览 252人参与
# 学历对求职的影响 #
161371次浏览 1805人参与
# 你收到了团子的OC了吗 #
539051次浏览 6391人参与
# 你已经投递多少份简历了 #
344483次浏览 4965人参与
# 实习生应该准时下班吗 #
97123次浏览 724人参与
# 听劝,我这个简历该怎么改? #
63538次浏览 622人参与
牛客网
牛客企业服务