zoukankan      html  css  js  c++  java
  • 第六次作业——正规文法与正规式

    1.分别写出描述以下语言的正规文法和正规式:

    L1={abna|n≥0}。

     正规文法:

      S→aA,A→bna

      A→Ba,B→bn

      B→bB|ε

    正规式:

      S=aA

      A=Ba

      B=b*

      S=ab*a

    L2={ambn|n≥1,m ≥1}

     正规文法:

      S→aP,P→bn

      P→Bb,B→bn

      B→bB|b

      S→Qb,Q→am

      Q→Aa,A→am

      A→Aa|a

    正规式:

      A=Aa|a

      B=bB|b

      S=aB|Ab

        =a(bB|b)|(aA|a)b

        =abb*|a*ab

        =(ab)(b|a)*

    L2={(ab)n|n≥1}

     正规文法:

      S→anP,P→bn

      P→Bb,B→bn

      B→bB|b

      S→Q(bB|b),Q→an

      Q→aA,A→an

      A→aA|a

    正规式:

      A=aA|a

      B=Bb|b

      S=(aA|a)(Bb|b)

        =aa*b*b

        =a(ab)*b

     2.将以下正规文法转换到正规式

    Z→0A
    A→0A|0B
    B→1A|ε

      A=(0A+0(1A+ ε ))

        =0A+01A+0

        =(0+01)A+0

        =(0|01)A|0

        =(0|01)*0

      Z=0A=0(0|01)*0

    Z→U0|V1
    U→Z1|1
    V→Z0|0

       Z=U0+V1

         =(Z1+1)0+(Z0+0)1

         =Z10+10+Z01+01

         =Z(10+01)+(10+01)

         =Z(10|01)|(10|01)

         =(10|01)*(10|01)

    S→aA
    A→bA|aB|b
    B→aA

       A=bA+a(aA)+b

         =(b+aa)A+b

         =(b|aa)A|b

         =(b|aa)*b

      S=aA

         =a(b|aa)*b

    I→l|Il|Id(太难识别,修改为:L→i|Li|Ld

      L=i+Li+Ld

        =i+L(i+d)

        =L(i|d)|i

        =(i|d)*i

     

  • 相关阅读:
    加油站
    UIScrollView控件实现图片轮播
    键值编码 KVC
    键值观察 KVO
    弹出视图集合
    关于Page翻页效果, PageViewConrtoller
    Event Handling Guide for iOS--事件驱动指南
    远程控制
    耳机线控
    ASI框架的使用
  • 原文地址:https://www.cnblogs.com/lxml/p/11676221.html
Copyright © 2011-2022 走看看