资源简介
DFA NFA 用java实现,代码简单易懂,并附有程序设计文档。

代码片段和文件信息
import java.util.*;
import java.io.*;
class DFA
{
boolean recognizeString(int move[][] int accept_state[] String word)
{
int step = 0;
char temp;
int i;
for(i = 0; i < word.length(); i++)
{
int j = 0;
temp = word.charAt(i);
j = temp - ‘a‘;
step = move[step][j];
}
for(i = 0; i < accept_state.length; i++)
{
if(step == accept_state[i])
return true;
}
return false;
}
public static void main(String args[]) throws IOException
{
int n m;
BufferedReader in = new BufferedReader(new FileReader(“DFA.in“));
StringTokenizer st = new StringTokenizer(in.readLine());
n = Integer.parseInt(st.nextToken());
m = Integer.parseInt(st.nextToken());
while (n != 0)
{
int[][] move = new int[n][m];
for(int i=0; i {
st = new StringTokenizer(in.readLine());
for (int j=0; j move[i][j] = Integer.parseInt(st.nextToken());
}
String[] temp = in.readLine().split(“\\s“);
int[] accept = new int[temp.length];
for (int i=0; i String word = in.readLine();
while (word.compareTo(“#“) != 0)
{
DFA dfa = new DFA();
if (dfa.recognizeString(move accept word)) System.out.println(“YES“); else System.out.println(“NO“);
word = in.readLine();
}
st = new StringTokenizer(in.readLine());
n = Integer.parseInt(st.nextToken());
m = Integer.parseInt(st.nextToken());
}
}
}
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 1048 2012-10-25 23:43 NFA\NFA.txt
目录 0 2012-10-25 23:40 DFA\
文件 24 2012-10-24 11:09 DFA\DFA.bat
文件 89 2012-10-11 15:52 DFA\DFA.in
文件 1736 2012-10-24 11:02 DFA\DFA.java
文件 821 2012-10-24 11:27 DFA\DFA.txt
目录 0 2012-10-25 23:39 NFA\
文件 24 2012-10-24 11:28 NFA\NFA.bat
文件 92 2012-10-11 15:52 NFA\NFA.in
文件 3206 2012-10-25 20:49 NFA\NFA.java
- 上一篇:java农夫过河问题
- 下一篇:Android自定义柱状图,带有标注和左右滑动效果
相关资源
- jsonarray所必需的6个jar包.rar
- 三角网构TIN生成算法,Java语言实现
- java代码编写将excel数据导入到mysql数据
- Java写的cmm词法分析器源代码及javacc学
- JAVA JSP公司财务管理系统 源代码 论文
- JSP+MYSQL旅行社管理信息系统
- 推荐算法的JAVA实现
- 基于Java的酒店管理系统源码(毕业设
- java-图片识别 图片比较
- android毕业设计
- java23种设计模式+23个实例demo
- java Socket发送/接受报文
- JAVA828436
- java界面美化 提供多套皮肤直接使用
- 在线聊天系统(java代码)
- 基于Java的图书管理系统807185
- java中实现将页面数据导入Excel中
- java 企业销售管理系统
- java做的聊天系统(包括正规课程设计
- Java编写的qq聊天室
- 商店商品管理系统 JAVA写的 有界面
- JAVA开发聊天室程序
- 在linux系统下用java执行系统命令实例
- java期末考试试题两套(答案) 选择(
- JAVA3D编程示例(建模、交互)
- Java 文件加密传输
- java做的房产管理系统
- 基于jsp的bbs论坛 非常详细
- [免费]java实现有障碍物的贪吃蛇游戏
- java Servlet投票实例
评论
共有 条评论