我在找一种特定的数据类型。
这种数据类型的主要思想是描述包含几个步骤的生产线。每个步骤都应该表示为包含任何类型对象的“顶点”。然后,对于每一个“顶点”,可能会有“子产品线”连接这条线。
这样看起来就像:
O -> O -> | # subproductionline
| # joiningpoint
O -> O -> O -> O -> O -> O -> O # main productionline
| # joiningpoint
O -> O -> O -> | # subproductionline
| # joiningpoint
O -> | #subsubproductionline你们中有人知道这样的数据类型吗?
如果我编码这样的数据类型..。我认为这样做有两个选择:
或
yout认为更好的解决方案是什么?
我想使用的编程语言是C/ c++。
发布于 2014-09-15 14:34:13
嗯,经过长时间的搜索和查阅我自己的研究文件,我得到了LTS (标签转换系统),有两个不同的过渡,例如m(代表main)和S(代表sub)。
所以你有一组节点。以及一组包含信息的转换,如果是在主生产线上,或者来自子生产线的话。
发布于 2014-04-14 14:55:11
我认为这是一个有向图。每个顶点(或节点)是处理的一个阶段,每个边在一个生产过程中连接两个阶段。
发布于 2014-06-02 10:41:23
你画的是有向图。它很可能是有向树,但它可以是有向无圈图。提供的图表和我对流程的理解将与循环不兼容,但我不清楚是否只有扇入或也有扇出。
这类图是一种众所周知的、经过彻底分析的数据结构。有许多算法用于做有趣的事情,如查找路径、剪枝、重新排序、加权等等。
在C++中,您可以使用指向其他节点的指针集合将其实现为节点。如果它是一棵树,而且如果您只需要向一个方向导航,则每个节点只需要一个“向下”指针。
在标准库中提供了一些函数,可以使这些实现结构变得非常简单。您可以说C++是为解决这个问题而设计的(以及那些喜欢它的人)。
https://softwareengineering.stackexchange.com/questions/235917
复制相似问题