Snowdream

I'm awake but my world is half asleep
posts - 403, comments - 310, trackbacks - 0, articles - 7
  BlogJava :: 首页 :: 新随笔 :: 联系 :: 聚合  :: 管理

总算弄明白生成first和follow集合的算法了

Posted on 2007-09-23 22:22 ZelluX 阅读(2089) 评论(2)  编辑  收藏 所属分类: Courses
太笨了,看了好久才明白。。。
first集合没有问题

follow集合:
以A -> aBb为例,如果b nullable,则follow(B)包括follow(A),原因很简单,把A看成一个整体,当作为production的右式时它后面直接跟的元素自然也可能是B后面直接跟的元素,因为b可能为空。

理解follow集合的定义后,虎书上给出的算法
if Yi+1 ... Yk are all nullable
    then FOLLOW(Yi) = FOLLOW(Yi) U FOLLOW(X)
if Yi+1 ... Yj-1 are all nullable
    then FOLLOW(Yi) = FOLLOW(Yi) U FIRST(Yj)
就不难理解了


评论

# re: 总算弄明白生成first和follow集合的算法了  回复  更多评论   

2008-04-20 16:45 by zigzag
thank you

# re: 总算弄明白生成first和follow集合的算法了[未登录]  回复  更多评论   

2008-05-07 09:37 by 阿甘
你好,有个关于follow集合的问题不是很明白,想向你请教一下
能不能告诉我你的qq
或者你加我也行
我的qq是
278679633
先谢谢了啊。

只有注册用户登录后才能发表评论。


网站导航: