Algorithm 如何使这种上下文无关的语法明确无误?
语言是所有形式为Algorithm 如何使这种上下文无关的语法明确无误?,algorithm,context-free-grammar,ambiguous,formal-languages,context-free-language,Algorithm,Context Free Grammar,Ambiguous,Formal Languages,Context Free Language,语言是所有形式为(0^i)(1^j)的二进制字符串,其中2i>=j。换句话说,一组二进制字符串,其中最多有两倍的1和0以及所有0是前导的 我的尝试: S -> 0S | T T -> 0T1 | U U -> 0U11 | epsilon 但是,这在字符串0011上是不明确的。我怎样才能解决这个问题呢?您几乎拥有了它,只需一个小小的变化: S -> 0S | T T -> 0U1 | U U -> 0U11 | epsilon 这确保了一定数
(0^i)(1^j)的二进制字符串,其中2i>=j
。换句话说,一组二进制字符串,其中最多有两倍的1
和0
以及所有0
是前导的
我的尝试:
S -> 0S | T
T -> 0T1 | U
U -> 0U11 | epsilon
但是,这在
字符串0011
上是不明确的。我怎样才能解决这个问题呢?您几乎拥有了它,只需一个小小的变化:
S -> 0S | T
T -> 0U1 | U
U -> 0U11 | epsilon
这确保了一定数量的1只能以一种方式产生。然后使用规则S->0S生成仍然需要的0。您几乎拥有了它,只需一个小改动:
S -> 0S | T
T -> 0U1 | U
U -> 0U11 | epsilon
这确保了一定数量的1只能以一种方式产生。然后使用规则S->0S生成仍然需要的0。您确定发布此消息的正确站点也是吗?@user202729。您确定发布此消息的站点是正确的吗?@user202729。