zoukankan      html  css  js  c++  java
  • DFA最小化,语法分析初步

    1.将DFA最小化:教材P65 第9题

    {1,2,3,4,5} {6,7}
     

    {1,2}b→{1,2,3,4,5}

    {3,4}b→{6,7}

    {5}b→ε

    {1,2,3,4,5}可区别,划分

     
    {1,2}{3,4}{5} {6,7}
     

    {1}a{3,4}   {2}a{3,4}

    {1}b{1,2}   {2}b{1,2}

    {1,2}不可区别,等价

    {3}c{3,4}  {4}c{3,4}

    {3}d{5}   {4}d{5}

    {3,4}不可区别,等价

    {6}b{6,7}

    {7}b{6,7}

    {6,7}不可区别,等价

    {1,2}{3,4}{5} {6,7}

    最小化:

    2.构造以下文法相应的最小的DFA

    S→ 0A|1B

    A→ 1S|1

    B→0S|0

     正规式:

    构造:

    转化为DFA

        0 1
    a ε{x}={xad} {be} {cf}
    b {be}   ε{ay}={ady}
    c {cf} ε{cf}={ady}  
    d {ady} {be} {cf}

    最小化:

    {a,b,c} {d}
     

    {a}0→{a,b,c}

    {b}0→ε

    {c}0→{d}

    {a,b,c}可区别,划分

    不可区别
    {a,b,c} {d}

    3.自上而下语法分析,回溯产生的原因是什么?

    S -> AB
    S -> aAB
    S -> aaAB
    S -> aaaAB
    S -> aaaɛb
    S -> aaab

    原因:反复提取公共左因子

    4.P100 练习4,反复提取公共左因子。

      S -> C$

      C -> bA | aB

      A -> aC| bAA

      B -> bC' | aBB

      C-> C | ɛ

  • 相关阅读:
    SaltStack 配置SLS过程
    Python 正则表达式
    Python 矩阵的旋转
    SaltStack 远程执行
    SaltStack 配置管理
    SaltStack
    Python 装饰器
    Python 生产者和消费者模型
    Python 迭代器和生成器
    Python json模块
  • 原文地址:https://www.cnblogs.com/momo-er/p/11803855.html
Copyright © 2011-2022 走看看