【发布时间】:2011-07-09 04:03:07
【问题描述】:
我想找到一个合适的算法来解决这个问题:
假设我们有 N 个项目,并且我们知道每个项目会赚多少钱,以及每个项目需要多少时间来完成(每个项目的估计时间)。我们有一定的可用时间来完成所有项目。我们希望选择项目以使我们的利润最大化并且总体估计时间不超过可用时间。你能告诉我应该使用哪种优化算法吗?有没有可以在 C#、.NET 技术或 Java 技术中使用的东西?
【问题讨论】:
-
取决于 N。这是一个真正的问题,还是一个练习?如果这是一个真正的问题,我怀疑您的 N 是否足够大以排除对所有可能组合的蛮力搜索。
-
我喜欢用 C# 程序替换所有管理的一般想法,但不清楚您要问什么或这与编程有什么关系。请举例说明输入和所需输出。
-
@mbeckish 在现实世界中的蛮力对于这些类型的优化几乎总是不切实际的
-
为了获得最大的利润,您还必须知道每个项目的盈利能力,或者如果延迟,每个项目您将损失多少。
标签: c# java .net algorithm optimization