德·布鲁因图

对于mm 个符号的nn 维德·布鲁因有向图记为B(m,n)B(m, n),其中包含mnm^n 个节点,每个节点是由mm 个符号序列组成的长度为nn 的序列。

给定mm 个符号集合S={s1,,sm}S=\{s_1,\cdots, s_m\},那么对应的节点集合为

V=Sn={(s1,,s1,s1),(s1,,s1,s2),,(s1,,s1,sm),(s1,,s2,s1),,(sm,,sm,sm)}V=S^{n}=\left\{\left(s_{1}, \ldots, s_{1}, s_{1}\right),\left(s_{1}, \ldots, s_{1}, s_{2}\right), \ldots,\left(s_{1}, \ldots, s_{1}, s_{m}\right),\left(s_{1}, \ldots, s_{2}, s_{1}\right), \ldots,\left(s_{m}, \ldots, s_{m}, s_{m}\right)\right\}

对应的边集合定义:如果一个节点对应的序列可以由另一个节点的对应的序列向左平移一位并加上另一个节点得到,那么这两个节点间存在一条有向边。形式化定义如下

E={((t1,t2,,tn),(t2,,tn,sj)):tiS,1in,1jm}E=\left\{\left(\left(t_{1}, t_{2}, \ldots, t_{n}\right),\left(t_{2}, \ldots, t_{n}, s_{j}\right)\right): t_{i} \in S, 1 \leq i \leq n, 1 \leq j \leq m\right\}

具备以下属性:

  • 如果n=1n=1 表示任一节点间存在边相连,因此图中包含m2m^2 条边。
  • 每个节点包含mm 条出边和mm 条入边。
  • nn 维的德·布鲁因图是等价于n1n-1 维德·布鲁因图的线图,对应的节点结合相同。
  • 每个德·布鲁因图都是欧拉型和哈密顿型,即欧拉路径和哈密顿路径是德布鲁因序列。

德·布鲁因图如下所示:

DeBruijn-as-line-digraph.svg

线图

在图论中,一个无向图GG 的线图表示为L(G)L(G),它表示GG 的边之间的邻接关系。

L(G)L(G) 的构造方法如下:

  • 对于GG 中的每一条边,在L(G)L(G) 中对应一个顶点;
  • 对于GG 中每两条有一个共同顶点的边,在L(G)L(G) 中它们对应的顶点之间做一条边。

例如对于一个简单图,构造过程如下:

step 1 step 2 step 3 step 4

Contact