相关疑难解决方法(0)

在树结构中合并分支的模式或算法?

我试图将DAG(有向无环图)映射到我在下面显示的结构中.

这是我从DAG开始的一个例子

在此输入图像描述

弧总是从左到右.

然后我恢复图形并将其跨越到具有重复节点的树中,如下所示:

在此输入图像描述

我正在寻找的是一些算法或模式来实现以下合并结构.(注意它再次被还原)

在此输入图像描述

目标是生成这样的XML:

<root>
    <seq>
        <mod1/>
        <flow>
            <seq>
                <mod4/>
                <mod7/>
            </seq>
            <seq>
                <flow>
                    <seq>
                        <flow>
                            <mod4/>
                            <mod3/>
                        </flow>
                        <mod6/>
                    </seq>
                    <seq>
                        <flow>
                            <mod4/>
                            <mod3/>
                            <mod2/>
                        </flow>
                        <mod5/>
                    </seq>
                </flow>
                <mod8/>
            </seq>
        </flow>
    </seq>
</root>
Run Code Online (Sandbox Code Playgroud)

我不认为它是相关的,但我正在解析JSON以使用JAVA 7编写XML.框是Web服务,箭头表示输入和输出参数,因此,例如,模块5被调用一次模块1,2,3和4已完成,其输出是其输入.

编辑:好的,这是另一个十个节点的例子.我希望这能让您更好地了解我的节点何时合并.

在此输入图像描述

要回答@blubb,在这个例子中我们可以看到"服务"8和9是如何合并的.否则他们需要工作的所有服务(1,2,3,4,5和6)将被呼叫两次而不需要.最后一个草图中的中间分支将执行两次:一次为8次,一次为9次.

algorithm design-patterns

9
推荐指数
1
解决办法
3321
查看次数

标签 统计

algorithm ×1

design-patterns ×1