全球主机交流论坛

标题: 有没有大佬懂排序算法的,求解 [打印本页]

作者: 饕餮    时间: 2018-11-5 15:56
标题: 有没有大佬懂排序算法的,求解
MJJ们卧虎藏龙,求解这个题这么做


作者: hxuf    时间: 2018-11-5 15:58
假装自己看懂了。
作者: seobaikewang    时间: 2018-11-5 16:10
提示: 作者被禁止或删除 内容自动屏蔽
作者: 方块李    时间: 2018-11-5 16:13
只觉得BD里选一个
作者: 饕餮    时间: 2018-11-5 16:15
seobaikewang 发表于 2018-11-5 16:10
每个人的算法都不一样,这个题。

为啥啊,参**选D
作者: 饕餮    时间: 2018-11-5 16:16
方块李 发表于 2018-11-5 16:13
只觉得BD里选一个

为何不能K2先排呢,读不懂
作者: miniliuke    时间: 2018-11-5 16:16
本帖最后由 miniliuke 于 2018-11-5 16:30 编辑

感觉好像CD都可以啊
作者: tiane12    时间: 2018-11-5 16:19
本帖最后由 tiane12 于 2018-11-5 16:30 编辑

A和C都能满足需求。
第一遍,无论哪种排序方法,先按照K1把整个序列排序。
第二遍,找相同数值的k1序列,只要找到连续n>=2个,直到找到最长相同k1序列,截出来使用任一方法按照k2的值大小进行排序,然后再放回去即可。
与排序算法无关,完全不知道这题想说什么。

----
补充,刚才想了一下,这题可能考的是排序算法的稳定性。
那么补充一下常识:直接选择排序是不稳定的;直接插入排序是稳定的。但按照这个题目,无论稳不稳定,A、C都能满足需求。

--------------
明白题意了,选D……

如上,所说,考察的是稳定性,你自己举几个例子试试就知道了。
作者: miniliuke    时间: 2018-11-5 16:20
好吧,我错了,选D......
作者: 饕餮    时间: 2018-11-5 16:23
tiane12 发表于 2018-11-5 16:19
A和C都能满足需求。
第一遍,无论哪种排序方法,先按照K1把整个序列排序。
第二遍,找相同数值的k1序列,只 ...

https://www.bilibili.com/video/av33533137/?p=256

这是讲解视频,完全看不懂
作者: wolfewong    时间: 2018-11-5 16:24
估计选d,k2的排序方法并不重要,重要的是在排k1的时候保持k2的有序性,因此要用稳定的算法。
堆排序、快速排序、希尔排序、直接选择排序不是稳定的排序算法,而基数排序、冒泡排序、直接插入排序、折半插入排序、归并排序是稳定的排序算法(来自百度,我记不住)
作者: tiane12    时间: 2018-11-5 16:25
饕餮 发表于 2018-11-5 16:23
https://www.bilibili.com/video/av33533137/?p=256

这是讲解视频,完全看不懂

懒得看视频。
这题与排序稳定性有关,但题出的太烂。
作者: 饕餮    时间: 2018-11-5 16:25
miniliuke 发表于 2018-11-5 16:20
好吧,我错了,选D......

大佬,帮忙解释一下呀
作者: 眷恋神仙的笑    时间: 2018-11-5 16:27
选D,这个题是考察排序是否稳定。直接插入排序算法是稳定的,简单选择排序算法不稳定。
作者: tiane12    时间: 2018-11-5 16:31
眷恋神仙的笑 发表于 2018-11-5 16:27
选D,这个题是考察排序是否稳定。直接插入排序算法是稳定的,简单选择排序算法不稳定。 ...

我也明白这题的意思了,确实是D,但题目很low,实现这个需求,完全不需要对所有的元素排序两次。
作者: 饕餮    时间: 2018-11-5 16:33
wolfewong 发表于 2018-11-5 16:24
估计选d,k2的排序方法并不重要,重要的是在排k1的时候保持k2的有序性,因此要用稳定的算法。
堆排序、快速 ...

多谢老哥,大佬这么一说,貌似懂了,感觉这题目好绕
作者: 眷恋神仙的笑    时间: 2018-11-5 16:34
tiane12 发表于 2018-11-5 16:31
我也明白这题的意思了,确实是D,但题目很low,实现这个需求,完全不需要对所有的元素排序两次。 ...

那按大佬的说法题目都很low咯?这知识排序模块为了加深对排序稳定性理解的题目,要是出个题都得联合实际,求最优解,那题还有没有办法出了?那高中数学题都能用高数简单解答,那高中的弱智办法就没用了么。
作者: miniliuke    时间: 2018-11-5 16:34
本帖最后由 miniliuke 于 2018-11-5 16:39 编辑



别看答案的前半句,没有太大意义,正确答案是K2先排序,方法不限,我觉得是BD都行......好像又理解错了简单选择,果然还是选D啊,o(︶︿︶)o 唉,我以为简单选择也稳定.......
作者: 饕餮    时间: 2018-11-5 16:34
眷恋神仙的笑 发表于 2018-11-5 16:27
选D,这个题是考察排序是否稳定。直接插入排序算法是稳定的,简单选择排序算法不稳定。 ...

懂了,谢谢老哥




欢迎光临 全球主机交流论坛 (https://loc.516000.xyz/) Powered by Discuz! X3.4