【问题标题】:Proof of Suffix tree root edges后缀树根边的证明
【发布时间】:2016-05-15 12:31:18
【问题描述】:

我想知道如何写一个证明,证明后缀树中的分支或根边的数量等于字符串 S 的字母大小。假设我们有 S = {aaabaac},alphabet={a, b,c},字母的大小 = 3,那么根边(或从根开始的分支)只会正好是 3,即 a、b 和 c。或者这可以通过定义来证明吗?不确定!

【问题讨论】:

  • 这取决于您使用的确切定义。通常,你会假设否定假设。然后你会证明这样的树不可能存在,因此假设是错误的,而原始假设是正确的。因此,在您的情况下,假设树有 not 恰好三个根边,并表明这不可能是真的。
  • 感谢最初的指导,但是我如何在证明中准确地反驳呢?这不是任何家庭作业,只是为了了解如何做到这一点。因此,我如何证明如果它有例如在这种情况下它有 4 个根边然后不是有效的后缀树?

标签: proof suffix-tree proof-of-correctness


【解决方案1】:

这实际上不一定是真的。您需要考虑两个因素:

  1. 后缀树包含一个额外的字符串结束标记(通常表示为 $),用于确保所有后缀对应于树中的叶子。这意味着您可能有 更多 个根的孩子而不是字母表中的字符。

  2. 对于字符串中出现的每个不同字符,根都会有一个子代,因此根的子代完全有可能比字母表的大小。例如,如果您的字母表是 {A, T, C, G},那么 AAAAAA$ 的后缀树将只有两个孩子 - 一个用于 $,一个用于 A。

【讨论】:

  • 如果您将 $ 添加为字符,则字母的大小也会增加 1,即在您的示例中,AAAAAA$ 将给出字母的大小 = 2,然后这将对应于 2 个根边,因此一个以一个和另一个以$开头的
  • 字符串的字母表是可能的个字符的集合,而不是使用的个字符的集合。
  • 好吧,让我们说 根据定义,树将在没有 $ 的情况下构造 - 因此是否有可能证明树将始终具有确切数量的根边的声明等于字母的大小?
  • 或者可能证明根边总是正好是 n+1 其中 n 是字母表的大小,因为我们现在已经确定了。
猜你喜欢
  • 1970-01-01
  • 2019-08-05
  • 1970-01-01
  • 2012-06-26
  • 2016-06-24
  • 2012-04-21
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多