2012-10-04 28 views
0

说我有一个9分的网格:连接网格的数据结构?

1  2  3 


4  5  6 



7  8 9 

每个点/节点可以连接到其他节点,以形成段:

1  2  3 
| 
| 
4  5  6 
|  | 
|  | 
|  | 
7-------8-----9 

在该图示中,1被连接到4,4被连接到图1和7,7连接到4 8,8被连接到图5和图9中,5是连接到图8和9连接到8.

如果我简单地呈现该是这样的:

for each node n1 
for each node n2 in n1 
create segment from n1 to n2. 

这会产生大量重复段。

会有办法做到这一点,我只创造必要数量的细分市场?

我的目标是能够说,打破1和4之间的联系,并连接1和5并重新生成网格。

我正在尝试生成一个简单的城市。

由于

回答

0

在ASCII图中所示的结构被称为graph。尤其是,您正试图生成planar graph。在计算机程序中有几种常见的方法来表示graph data structure

这些维基百科链接对数学理论非常重要,但我希望你觉得它们很有帮助。