91av视频/亚洲h视频/操亚洲美女/外国一级黄色毛片 - 国产三级三级三级三级

  • 大小: 51KB
    文件類型: .zip
    金幣: 2
    下載: 0 次
    發(fā)布日期: 2023-07-12
  • 語言: Java
  • 標簽: java??LL1??

資源簡介

編譯原理課程設計,開發(fā)的一款基于java的語法分析器,用到LL1文法

資源截圖

代碼片段和文件信息

package?hjzgg.analysistable;

import?hjzgg.first.First;
import?hjzgg.follow.Follow;
import?hjzgg.tablenode.TableNode;
import?hjzgg.treenode.TreeNode;

import?java.util.ArrayList;
import?java.util.linkedHashMap;
import?java.util.Map;
import?java.util.Set;
import?java.util.Stack;
import?java.util.TreeMap;
import?java.util.TreeSet;

public?class?AnalysisTable?{
private?final?int?noFinalCharacterCount?=?100;
private?MapstringToInt?=?new?TreeMap();//分析表行?列?字母映射到數字
private?MaptableRow?=?new?TreeMap();//分析表?行列?數字?映射到字母
private?MaptableCol?=?new?TreeMap();
private?String[][]?table?=?new?String[noFinalCharacterCount][];//分析表
private?SetterminalCharacters?=?new?TreeSet();//終結符集合
private?Map>?first?=?null;
private?Map>?follow?=?null;
private?Map?mp?=?null;
private?int?nodeCntRow?=?0?nodeCntCol=0;

public?static?final?int?treeNodeCnt?=?200;//樹最多節(jié)點的個數
private?int?cntTreeNode?=?0;
private?ArrayList?usedProduction?=?null;//預測分析中所用到的產生式
private?int?fatherNode;//treeGraphic搜素是的開始節(jié)點
private?TreeNode[]?treeGraphic?=?new?TreeNode[treeNodeCnt];
private?String[]?usedProductionString?=?null;
private?String[]?inputString?=?null;
private?String[]?analysisStack?=?null;
private?String[]?synchString?=?null;

public?String[]?getSynchString(){
return?synchString;
}
public?String[]?getAnalysisStack(){
return?analysisStack;
}
public?String[]?getInputString(){
return?inputString;
}
public?String[]?getUsedProductionString(){
return?usedProductionString;
}

public?Map?getStringToInt(){
return?stringToInt;
}
public?Set?getTerminalCharacters(){
return?terminalCharacters;
}

public?int?getFatherNode(){
return?fatherNode;
}

public?TreeNode[]?getTreeGraphic(){
return?treeGraphic;
}

public?AnalysisTable(Map>?first
Map>?follow?Map?mp)?{
super();
this.first?=?first;
this.follow?=?follow;
this.mp?=?mp;
init();
}

private?void?init(){
for(String?leftNode?:?mp.keySet()){
stringToInt.put(leftNode?++nodeCntRow);
tableRow.put(nodeCntRow?leftNode);
String[]?rightNodes?=?mp.get(leftNode);
for(int?i=0;?i for(int?j=0;?j if(!mp.containsKey(““+rightNodes[i].charAt(j))?&&?rightNodes[i].charAt(j)!=‘\‘‘?&&?rightNodes[i].charAt(j)!=‘$‘){//每一個終結符
if(!stringToInt.containsKey(““+rightNodes[i].charAt(j))){
stringToInt.put(““+rightNodes[i].charAt(j)?++nodeCntCol);
terminalCharacters.add(rightNodes[i].charAt(j));
tableCol.put(nodeCntCol?““+rightNodes[i].charAt(j));
}
}
}
}
stringToInt.put(“#“?++nodeCntCol);
tableCol.put(node

?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????目錄???????????0??2015-04-28?23:11??加入同步符號后的語法分析器\
?????目錄???????????0??2015-04-28?23:11??加入同步符號后的語法分析器\hjzgg\
?????目錄???????????0??2015-04-28?23:11??加入同步符號后的語法分析器\hjzgg\analysistable\
?????文件???????12316??2015-04-28?23:07??加入同步符號后的語法分析器\hjzgg\analysistable\AnalysisTable.java
?????目錄???????????0??2015-04-28?23:11??加入同步符號后的語法分析器\hjzgg\analysistableframe\
?????文件???????12657??2015-04-28?22:36??加入同步符號后的語法分析器\hjzgg\analysistableframe\AnalysisTableframe.java
?????目錄???????????0??2015-04-28?23:11??加入同步符號后的語法分析器\hjzgg\filter\
?????文件?????????836??2015-04-24?15:31??加入同步符號后的語法分析器\hjzgg\filter\MyFilter.java
?????目錄???????????0??2015-04-28?23:11??加入同步符號后的語法分析器\hjzgg\first\
?????文件????????2504??2015-04-24?12:52??加入同步符號后的語法分析器\hjzgg\first\First.java
?????目錄???????????0??2015-04-28?23:11??加入同步符號后的語法分析器\hjzgg\follow\
?????文件????????4996??2015-04-26?18:44??加入同步符號后的語法分析器\hjzgg\follow\Follow.java
?????目錄???????????0??2015-04-28?23:11??加入同步符號后的語法分析器\hjzgg\grammatical\
?????目錄???????????0??2015-04-28?23:11??加入同步符號后的語法分析器\hjzgg\grammatical\analysis\
?????文件????????3101??2015-04-17?15:02??加入同步符號后的語法分析器\hjzgg\grammatical\analysis\MainGrammaticalAnalysis.java
?????目錄???????????0??2015-04-28?23:11??加入同步符號后的語法分析器\hjzgg\tablenode\
?????文件?????????225??2015-04-24?13:03??加入同步符號后的語法分析器\hjzgg\tablenode\TableNode.java
?????目錄???????????0??2015-04-28?23:11??加入同步符號后的語法分析器\hjzgg\treegraphic\
?????文件????????5805??2015-04-24?12:47??加入同步符號后的語法分析器\hjzgg\treegraphic\TreeGraphic.java
?????目錄???????????0??2015-04-28?23:11??加入同步符號后的語法分析器\hjzgg\treenode\
?????文件?????????593??2015-04-28?21:51??加入同步符號后的語法分析器\hjzgg\treenode\TreeNode.java
?????文件??????????40??2015-04-26?12:06??加入同步符號后的語法分析器\文本4.4.txt
?????文件??????????66??2015-04-24?19:13??加入同步符號后的語法分析器\文法.txt
?????文件??????????32??2015-04-26?10:31??加入同步符號后的語法分析器\文法4.1.txt
?????文件??????????68??2015-04-26?10:23??加入同步符號后的語法分析器\文法4.2.txt
?????文件??????????24??2015-04-26?11:00??加入同步符號后的語法分析器\文法4.3.1.txt
?????文件??????????25??2015-04-26?11:03??加入同步符號后的語法分析器\文法4.3.2.txt
?????文件??????????11??2015-04-26?12:14??加入同步符號后的語法分析器\文法4.4-語法.txt
?????文件???????35132??2015-04-28?23:08??加入同步符號后的語法分析器\簡單語法分析器.jar
?????文件??????????11??2015-04-25?22:42??加入同步符號后的語法分析器\語法.txt
?????文件???????????7??2015-04-28?22:38??加入同步符號后的語法分析器\錯誤語法1.txt
............此處省略1個文件信息

評論

共有 條評論