搜索
查看: 1076|回复: 3
打印 上一主题 下一主题

快速排序第一位是最小数情况

[复制链接]
跳转到指定楼层
楼主
发表于 2014-8-4 10:10:36 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
5啊哈币
如果第一位是最小数
例如  1763982
按照“啊哈 算法” 来看 右边J左移。 一直找不到小于1的数 怎么交换?

最佳答案

查看完整内容

快速排序本质是将原有数据分割成俩部分,左边一部分小于(或大于,视要求而定)基准数,右边一部分大于(或小于)基准数,然后对左右两部分再进行快速排序 如果没有小于基准数的数,那么左边一部分的数就只有0个,但这并不妨碍整个排序过程(实际上对效率有些影响) 一般如果有必要的话,可以选择数据中第一个、中间一个和最后一个中大小适中的一个做基准
沙发
发表于 2014-8-4 10:10:37 | 只看该作者
快速排序本质是将原有数据分割成俩部分,左边一部分小于(或大于,视要求而定)基准数,右边一部分大于(或小于)基准数,然后对左右两部分再进行快速排序
如果没有小于基准数的数,那么左边一部分的数就只有0个,但这并不妨碍整个排序过程(实际上对效率有些影响)
一般如果有必要的话,可以选择数据中第一个、中间一个和最后一个中大小适中的一个做基准
板凳
发表于 2014-8-4 10:20:49 | 只看该作者
左边就没了,只有右边
下次对763982排序
地板
发表于 2014-8-4 19:14:24 | 只看该作者
981013 发表于 2014-8-4 17:10
快速排序本质是将原有数据分割成俩部分,左边一部分小于(或大于,视要求而定)基准数,右边一部分大于(或 ...

一般做法是随机选择……
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

广播台
特别关注
快速回复 返回顶部 返回列表