创建链接图

时间:2013-09-10 10:52:06

标签: algorithm logic

我有一个有趣的编程问题,我需要为我正在构建的iPhone应用程序解决这个问题。问题实际上是一个逻辑问题,不需要特定于任何特定的编程语言。

该应用程序需要生成一个链接图(如果这不是正确的术语,我会道歉,但这对我来说是有道理的)。您有以下数据:

A=C
B=A
C=O
D=F
E=F
F=G
G=D
H=J
I=L
J=N
K=A
L=O
M=C
N=H
O=E

字母A到O可以链接到任何其他字母。应用程序需要按照链接创建地图,因此从A开始,A链接到C,C链接到O,O链接到E,E链接到F等

完成后,此地图将如下图所示。

http://i.stack.imgur.com/TEfAs.jpg

我遇到的问题是我需要编写代码,使用任何链接组合输出任何地图。例如,另一个链接列表可能看起来像

A=B
B=A
C=A
D=A
E=A
F=A
G=A
H=A
I=A
J=A
K=A
L=A
M=A
N=A
O=A

我无法理解用于绘制应用程序的伪代码/逻辑。总共有15个字母A-O和一个字母永远不能链接到自身,所以A永远不能= A。

任何人都可以帮忙提出绘制地图的逻辑吗?

1 个答案:

答案 0 :(得分:0)

你想要的是绘制图形。没有图表的规范图形表示。因此,如果你没有约束如何绘制图形,你可以简单地创建一行字母,而不是根据你的地图在字母之间绘制拱门,

很像这样(ASCII-ART):

  1. 示例

    +-----------------------------------------+
    +--------------------------------------+  |
    +-----------------------------------+  |  |
    +--------------------------------+  |  |  |
    +-----------------------------+  |  |  |  |
    +--------------------------+  |  |  |  |  |
    +-----------------------+  |  |  |  |  |  | 
    +--------------------+  |  |  |  |  |  |  |
    +-----------------+  |  |  |  |  |  |  |  |
    +--------------+  |  |  |  |  |  |  |  |  |
    +-----------+  |  |  |  |  |  |  |  |  |  |
    +--------+  |  |  |  |  |  |  |  |  |  |  |
    +-----+  |  |  |  |  |  |  |  |  |  |  |  |
    |     |  |  |  |  |  |  |  |  |  |  |  |  |
    A  B  C  D  E  F  G  H  I  J  K  L  M  N  O
    |  |
    +--+
    
  2. 示例

                +-----------------------------+
          +-----------------------------+     |
    +--+  +-----------------------------------+
    |  |  |     |           +--------+  |     |
    A  B  C  D  E  F  G  H  I  J  K  L  M  N  O
    |     |  |  |  |  |  |     |  |  |     |  |
    +-----+  |  +--+  |  +-----+  |  +--------+
    |        +-----+  |  |     +-----------+
    |        |     +--+  +-----------------+
    |        +--------+           |
    +-----------------------------+
    
  3. 看起来有点混乱,但你不能总是避免过境。 [在这个例子中你可以,但我并没有试图避免穿越,因为在一般情况下无法避免。]