问题标题: 帮忙鉴定个我的算法

0
0
已解决
高舒豪
高舒豪
中级光能
中级光能

求大佬帮鉴定下我的排序算法

思路:

    对于一个数组,创建一个deque容器

    随机选一个中位数,放在容器里

    遍历这个数组,如果比中位数小,放在容器左边,否则放在右边

    放回数组内

    判断数组是否有序

    是则跳出

    否则分治

是否可以


0
已采纳
被禁言 高乐彤
高乐彤
修练者
修练者

你这有点像快排

好像可以,但有缺点

首先deque的功能是可以支持你这样的排序的

但是!!!!!!!!!!!!!!!!!!

时间复杂度过高

快排时间复杂度:O(n*log n)(log在编程中一般以2为底)

你的排序:

每次遍历n个,一直分下去,加上赋值,时间约为O((n*log n)*2)

慢了2倍,并且不稳定(快排也是),而且beque可能也会出问题

我要回答