1. 初始化FIRST集合为空集
  2. 对于每个终结符,将其本身加入FIRST集合
  3. 对于每个非终结符A,执行以下步骤: a. 如果A可以推出空串,将空串加入FIRST集合 b. 对于每个A的产生式A->X1X2...Xn,执行以下步骤: i. 将FIRST(X1)加入FIRST(A) ii. 如果FIRST(X1)包含空串,将FIRST(X2)加入FIRST(A) iii. 如果FIRST(X2)包含空串,将FIRST(X3)加入FIRST(A) iv. 重复ii和iii,直到所有Xi的FIRST集合都不包含空串,或者所有Xi都已处理完毕
  4. 返回所有符号的FIRST集合
求FIRST集合算法的伪代码

原文地址: https://www.cveoy.top/t/topic/fbuy 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录