乐观的证明是正确的吗?

问题描述

我遇到了以下问题:给定了 n 个文件,长度为 z1,...zn 和用法 u1,....un,其中所有 u1,...un 的总和等于 1。0

他们希望进行排序,以便从存储中获取文件所花费的时间最少。例如,如果 z1 = 12,l2 = 3 and u1 = 0,9 and u2 = 0,1 其中文件 1 首先被获取,则访问时间大约为 12* 0,8 + 15* 0,1

我的任务:证明这个(贪婪的)算法是最优的。

我的问题:我对那个问题的回答是否正确,或者我应该改进什么?

我的回答:

假设算法不是最优的,则必须存在一个更有效的顺序。为此,必须提到两个因素。用法和长度。使用的文件越多,访问时间就越短。为此,首先文件的长度必须尽可能短。如果公式 z1/u1 是按降序排序的。使用率高的文件会放在最后。因此,访问时间在 * 使用之前由所有长度构成,这意味着更频繁地文件将被缓慢访问。这与效率是矛盾的。假设公式 z_i / u_i 是低效的。除以 u_i 的结果是,如果给出更多用法,则该术语将更小。这意味着更常用的术语将被更快地访问,因此 u_i 是 0。如果与该划分不同,那么使用率较高的术语将不会被优先考虑,这将是效率的矛盾。也因为 z_i 在分数的顶部,较低的长度将首先被优先考虑。与此不同,这意味着长度较长的术语也应该是首选。首先考虑更长的期限与效率是矛盾的。因此,所有其他采用另一种排序的替代方案都可能相互矛盾,可以证明该术语是最佳且正确的。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)