我一直在努力寻找合适的算法和数据结构来规划给定天数的活动。事件具有与之关联的多个数据点。我需要在特定的日子里有人可以做的最多活动。
活动的数据点:
我看了activity selection algorithm,但不确定这是否适合我所看到的内容。
答案 0 :(得分:0)
让G(V, E)
成为以这种方式定义的有向非循环图(DAG):
v
都有一个顶点V
(i, j)
和E
在i
中有一条边j
,i
在j
之前结束,并且根据您的接近标准“兼容”(v_start, v)
和(v, v_end)
都在E中(即v_start
具有每个活动的传出边缘{{1}每个活动都有一个传入边缘)然后您想要的是从源到目的地的最长路径,可以通过遵循概述here的简单算法在线性时间内完成。