编译原理文法可以定义为四元集G(S)={Vn ,Vt,P,S},那么Vn* ,Vt*和Vn+ ,Vt+,即右上角加*或+是什么意思?

编译原理文法可以定义为四元集G(S)={Vn ,Vt,P,S},那么Vn* ,Vt*和Vn+ ,Vt+,即右上角加*或+是什么意思?

右上角加*是集合的闭包,也称为克林闭包(Kleene Closure),右上角加+是集合的正闭包
Vn* 是非终结符集的闭包,Vn+是非终结符集的正闭包
Vt* 是终结符集的闭包,Vt+是终结符集的正闭包
温馨提示:答案为网友推荐,仅供参考
第1个回答  2012-11-25
闭包和正闭包,Vn*也就是Vn中的符合组成任意符合串,Vn+同Vn*,只是不包括空串
第2个回答  2012-11-24
比如说B={0,1}

Bn表示重复n次
B0={空串} B1={0,1} B2={00,01,10,11} B3,....

B*表示重复0次或多次
B*=B0 U B1 U B2 U ....={空串,0,1,00,01,10,11,。。。。}

B+表示重复1次或多次
B+=B1 U B2 U B3 U ....={0,1,00,01,10,11,.....}

上面所说的“重复”就是指字符串的连接
相似回答