从正规文法构造有穷状态自动机输入:任意的正规文法输出:相应的有穷状态自动机要求:识别有穷状态自动机是确定的还是非确定的,生成相应的五元组形式。说明:应检查输入的是否正规文法。实验截图:测试一:测试二:***************************************************************************测试三:import java.util.Vector;import javax.swing.JOptionPane;class Tools{public Vector
protection(Vector vs){Vector newvector=new Vector();for(int i=0;i> doubleprotection(Vector> vs){Vector> newvector=new Vector>();for(int i=0;i produce=(Vector)vs.get(i);Vector temp=new Vector();for(int j=0;j addElements(Vector vs,Vectortemp){for(int i=0;i addElements(Vector vs,Vectortemp){ }//class toolsclass Elements{Vector end=new Vector();//表示终结符Vector noend=new Vector();//表示非终结符Vector> produce=new Vector>();//产生式public void setend(){//终结符元素添加while(true){String s=JOptionPane.showInputDialog(null,"请输入终结符");if(s==null){return;}//ifend.add(s);}//while}//public void addend(){//元素添加public void setnoend(){//非终结符元素添加while(true){String s=JOptionPane.showInputDialog(null,"非请输入终结符");if(s==null){return;}//ifnoend.add(s);}//while}//public void addnoend(){//public void setproduce(){ while(true) { String s=JOptionPane.showInputDialog(null,"请输入产生式,->隔开"); if(s==null)return; Vector temp=new Vector(); temp.add(s.split("->")[0]); temp.add(s.split("-...