如何设计CPM算法?
Posted
技术标签:
【中文标题】如何设计CPM算法?【英文标题】:how to design CPM algorithm? 【发布时间】:2009-12-09 09:26:09 【问题描述】:如何用列表数据结构表示图我有三个类(图、节点、边),并希望在图中找到关键路径。
如何计算
ES:最早开始 EC:最早完成 LS : 最近开始 LC:最新完成谢谢
【问题讨论】:
【参考方案1】:另一种存储图形的方法是 Boost 图形库 (BGL)。从我在***上看到的,critical path 是两个顶点之间最长的路径。此外,对于一般情况,似乎找到longest path 是 NP Complete,但对于我认为是您的情况的有向无环图 (DAG),有更有效的算法。
最长路径算法不在 BGL 中,但***上的 DAG 算法看起来相当容易实现。
【讨论】:
【参考方案2】:优秀的quickgraph库有描述图的类,以及大量的图算法,包括shortest path。你也许可以做类似的事情。
不过,您似乎想要的实际上比标准的图算法更复杂;似乎您希望 Microsoft Project 的核心以一种简单的算法可用,但不幸的是,事实并非如此。您可能会考虑购买一个项目副本,并使用它的 COM API 来创建您的计划——这可能是一种简单的方法,具体取决于您的环境。不过,我怀疑您将面临一大堆工作。
【讨论】:
我不知道 Qt 是什么,但我不明白为什么不知道。这是一个纯 .net 程序集,您可以在任何地方使用。以上是关于如何设计CPM算法?的主要内容,如果未能解决你的问题,请参考以下文章
通信算法之三十五:GMSK/MSK/CPFSK/CPM/FSK仿真链路