给定一个有向图,我如何找到删除最小数量的节点以删除整个图所需的顺序?我假设如果一个节点被删除,连接到它的所有外部节点(任何程度)也被删除。如何以最少的步骤删除图表?
例如,在二叉搜索树中,删除树中所有节点的最快方法(假定是)将删除根节点。但是,给定任何图表,如何确定要删除哪个节点?
我心目中的(很慢)什么:
- 生成所有可能的子图,并与最外边找到子。
- 删除该子图。
- 重复,直到没有剩余的节点。
为什么它是一个很好的问题: 假设我们得到与代表世界所有问题的节点有向图,而所有这些节点与代表的原因/效果的边缘(即一些问题进行了连接造成他人)。我们如何才能找到摆脱所有问题的最少数量的问题?
欢迎使用stackoverflow。从问题的复制/粘贴性质来看,这是一个分配问题。我们不介意帮助那些人,但目前格式化的方式是“为我做”,我们不在这里做。如果我们是,我们最终会获得学位;)。用你试过的一些例子更新你的问题,如果可以的话,我们会提供帮助。 – ScottMcGready
我已经添加了我对这个问题的答案,但我不得不承认这是一个非常慢的算法。另外,请记住,这不是一个分配问题。我只是想知道是否有人能想出解决这个问题的更好方法。 –
好得多。你现在会收到一个体面的回应。 – ScottMcGready