gpt4 book ai didi

algorithm - 分区优化版本的近似算法?

转载 作者:塔克拉玛干 更新时间:2023-11-03 05:58:44 24 4
gpt4 key购买 nike

在分区问题的优化版本中,我们希望将集合 X 分区为不相交的子集 AB 使得 max(sum (A),sum(B)) 是最小的。wikipedia 中提出了一种近似算法。 ,但我不明白为什么这个近似值是 4/3。

最佳答案

OPT >= sum(all)/2

考虑贪婪算法给你一些答案,如 S1 和 S2 其中:

max(sum(S1), sum(S2)) > 4/3 OPT

(不失一般性假设 sum(S1) > sum(S2))所以我们有:

sum(S1) > 4/3 OPT >= 2 sum(all)/3

所以:

sum(S1) > 4/3 OPT >= 2 sum(all)/3 so sum(S1) > 2 sum(all)/3

所以:

sum(S1) > 2 sum(S2)

因此,当 sum(S1) 小于 sum(S2) 时,在其中一个算法步骤中,您必须添加一个元素,如 A 到 S1 之后你没有向 S1

添加任何元素

因此 A 必须大于 sum(S2) 的最终状态(因为 A + sum(S1) > 2 sum (S2))

所以 A 大于当前状态 sum(S1) (因为当前状态 sum(S1) < 当前状态sum(S2) < sum(S1) < A )

的最终状态

并且您的列表按降序排序,因此 A 必须是排序列表中的第一个元素(最大元素)。所以你的 s1 必须只包含 A 而你有。

您还知道 sum(OPT) >= A 因为它包含 A 或其他部分包含 A 但 sum(OPT) 大于其他部分元素的总和所以

sum(OPT) > A

但是你有:

A = sum(S1) > 4/3 sum(OPT) > sum(OPT) > A

这是一个矛盾:)

关于algorithm - 分区优化版本的近似算法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27752677/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com