确定哪种方法最适合比较排序算法。小型数据收集的分治或招聘问题

Posted

技术标签:

【中文标题】确定哪种方法最适合比较排序算法。小型数据收集的分治或招聘问题【英文标题】:Determining what method is best for a comparative sorting algorithm. Divide and Conquer or Hiring Problem for small data collection 【发布时间】:2020-06-04 21:34:25 【问题描述】:

这是我面临的问题

我们有 25 种属于一个类别的独特材料,并且希望 确定这 25 种材料中的前 3 种材料的有效性。

很遗憾,我们没有可用于量化给定的有效性的实验方法 材料。

相反,我们可以运行比较实验,使每个实验都提供一个 5 种材料的有效性排名(从最有效到最不有效)。

跑步 这些实验相当昂贵,所以我们希望尽量减少她的实验次数 运行。

您能否设计一个策略来确定其中最有效的 3 种材料? 25 种材料通过进行最少数量的实验?最小数量是多少 需要多少实验才能最终确定 3 种最有效的材料?

你不需要 编写伪代码;口头解释(可能有图形支持)就足够了。

我不知道应该使用哪种类型的概率分析来解决这个问题。我相信招聘问题或分而治之将是最好的。对吗?

我对专业人士如何处理这类问题很感兴趣。

【问题讨论】:

这些值 25/5/3 是您唯一感兴趣的吗?那么似乎很容易证明可以在 7 个实验中选择前 3 个 概率是如何进入画面的? (我可以看到 部分 排序。) 【参考方案1】:

这是 7 个实验的方法。

做 5 组,每组 5 个。这需要 5 次实验。

比较每个组的顶部。我们现在有这样的顺序,其中每一行和每一列都是降序的。

1a 2a 3a 4a 5a
1b 2b 3b 4b 5b
1c 2c 3c 4c 5c
1d 2d 3d 4d 5d
1e 2e 3e 4e 5e

最好的元素是1a。比较1b 1c 2a 2b 3a,您会发现接下来的两个最佳元素。

我没有证据表明你不能用 6 做到这一点。但我确信这是真的。

【讨论】:

Do 5 groups of 5,将每一个排列在一个列中,从上到下降低效率? Compare the top of each group.排列其最有效(ia)元素的列有效性从左到右递减? (我之前不是在这里看到过这个问答吗?大约五年前?) @greybeard 可能。这个问题有一种熟悉的味道。事实上,用谷歌搜索它看起来像是 glassdoor.com/Interview/… 的变体。 但是底层原理很简单。始终进行能够为您提供有关答案的最多信息的实验。这适用于各种各样的相关问题。

以上是关于确定哪种方法最适合比较排序算法。小型数据收集的分治或招聘问题的主要内容,如果未能解决你的问题,请参考以下文章

数据结构 8 基础排序算法详解快速排序的实现了解分治法

哪种聚类算法最适合聚类一维特征?

C++ 不知算法系列之聊聊希尔归并排序算法中的分治哲学

哪种算法以及哪种超参数组合最适合对这些数据进行聚类?

交易数据的数据挖掘分类——哪种算法最适合?

桶排序计数排序和基数排序比较分析