资源简介
关于nfa确定化.zip
代码片段和文件信息
#include
#include
#include
#define MAX_LINE 1024
char in[MAX_LINE][MAX_LINE];
char now[MAX_LINE][MAX_LINE][MAX_LINE];
int flag_in[MAX_LINE][MAX_LINE];//没用到,可以不要
char now_state[MAX_LINE];
char state[MAX_LINE];
char alphabet=‘A‘;
int length=0;
int l_now=0;
int l_state=0;
void getfile(){
char buf[MAX_LINE];//缓冲区
int len;//行字符个数
FILE *fp; //文件指针
if((fp = fopen(“64-7(1).txt““r“)) == NULL)
{
printf(“fail to read“);
exit (1) ;
}
while(fgets(bufMAX_LINEfp) != NULL){
len = strlen(buf);
buf[len-1] = ‘\0‘; //去掉换行符
//printf(“%s %d \n“buflen);
strcpy(in[length++]buf);
}
fclose(fp);
}
void print(){
printf(“\n\nnow数组的结果是:\n“);
for(int i=0;i for(int j=0;j<4;j++){
printf(“%s “now[i][j]);
}
printf(“\n“);
}
}
//flag位用来记载上一步是不是q如果是q就可以让a或b走一步,
//如果不是q说明是a或b,因为a或b只能走一次,所以这次不能走
//past_flag位用来记载曾经有没有一步是a或b
char * dfs_d(char pchar qbool flagbool past_flag){
printf(“\n本次进行递归的是:%c %c\n“pq);
int xy;
if(q==‘a‘){
x=4;
}else if(q==‘b‘){
x=6;
}
for(int i=1;i if(p==in[i][0]){
y=i;
}
}
if(in[y][2]!=‘#‘){
flag_in[y][2]=1;
char str[3];
str[0]=in[y][2];
str[1]=‘‘;
str[2]=‘\0‘;
if(past_flag==true){
strcat(now_statestr);
}
dfs_d(in[y][2]qtruepast_flag);
}
if(in[y][x]!=‘#‘/*&&flag_in[y][x]==0*/&&flag==true&&past_flag==false){
flag_in[y][x]=1;
char str[3];
str[0]=in[y][x];
str[1]=‘‘;
str[2]=‘\0‘;
strcat(now_statestr);
dfs_d(in[y][x]qfalsetrue);
}
printf(“\n此次递归的结果为:%s\n“now_state);
return now_state;
}
char * dfs(char * statechar s){
memset(flag_in0sizeof(flag_in));
//printf(“now_state的结果是:%s“now_state);
/*
for(int i=0;i<10;i++){
for(int j=0;j<10;j++){
printf(“%d“flag_in[i][j]);
}
printf(“\n“);
}
*/
printf(“\ndfs读入结果为:%s %c\n“states);
char now_out[MAX_LINE];
strcpy(now_out“{“);
for(int i=0;state[i]!=‘\0‘;i++){
memset(now_state‘\0‘sizeof(now_state));
if(state[i]!=‘{‘&&state[i]!=‘}‘&&state[i]!=‘‘){
printf(“\n此次dfs_d的是:%c\n“state[i]);
//printf(“\n此时的now_out是:%s\n“now_out);
strcat(now_outdfs_d(state[i]struefalse));
}
}
int l_str=strlen(now_out);
if(l_str==1){
now_out[l_str]=‘}‘;
now_out[l_str+1]=‘\0‘;
}else{
now_out[l_str-1]=‘}‘;
now_out[l_str]=‘\0‘;
}
printf(“\n此次dfs_d的结果是:%s\n“now_out);
//字符串排序去重函数
char hash[100];
int value[100];
memset(hash‘\0‘sizeof(hash));
memset(value0sizeof(value));
strcpy(hash“x0123456789y“);
for(int i=0;i for(int j=0;j<12;j++){
if(now_out[i]==hash[j]){
value[j]=1;
}
}
}
char now_ans[100];
strcpy(now_ans“{“);
for(int i=0;i<12;i++){
if(value[i]==1){
char ss[3];
ss[0]=hash[i];
ss[1]=‘‘;
ss[2]=‘\0‘;
strcat(now_ansss);
}
}
int l_now_ans=strlen(now_ans);
if(l_str==1){
now_ans[l_now
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2019-10-27 17:31 关于nfa确定化\
文件 5131 2019-10-27 17:30 关于nfa确定化\4.1.png
文件 10025 2019-10-27 17:30 关于nfa确定化\4.2.png
文件 55235 2019-10-27 17:29 关于nfa确定化\4.png
文件 63 2019-10-26 18:04 关于nfa确定化\4.txt
文件 63 2019-10-27 16:20 关于nfa确定化\4s.txt
文件 80250 2019-10-27 13:37 关于nfa确定化\64-14.jpg
文件 45 2019-10-27 13:39 关于nfa确定化\64-14.txt
文件 72 2019-10-27 16:30 关于nfa确定化\64-7(1).txt
文件 88611 2019-10-27 16:47 关于nfa确定化\64-7.jpg
文件 5484 2019-10-27 17:12 关于nfa确定化\nfa确定化4.cpp
文件 137983 2019-10-27 17:14 关于nfa确定化\nfa确定化4.exe
文件 5519 2019-10-27 17:14 关于nfa确定化\nfa确定化(最终版).cpp
文件 137495 2019-10-27 17:14 关于nfa确定化\nfa确定化(最终版).exe
文件 290 2019-10-27 17:32 关于nfa确定化\说明.txt
相关资源
- B.pdf
- 百度网盘信息.txt
- JQ8900串口.zip
- 7E种子号.txt
- 链接-提取码.txt
- 北理工2018最优化方法大作业90.zip
- 体检系统.sln
- 220vto5v_Project.rar
- Cprimeplus第六版程序清单.zip
- 网盘.txt
- 电影票预订系统.doc
- 迅雷.txt
- FortranonVSonWindows10安装方法.txt
- 交通咨询管理系统课程设计.doc
- qq_41508508_10582420.zip
- Spark.txt
- visio2013.txt
- ArcGIS全套文件.txt
- 学成在线百度网盘链接.txt
- NavicatPremium12破解版.zip
- 开源1A锂电池充电板TP4056原理图PCB.r
- 内含提取码.txt
- CYC.unity
- RHCSA7题库修正版.doc
- mtsvm.rar
- RHCE注解-完整版.docx
- designpattern.zip
- volley.zip
- 成功的步骤.png
- emsdk地址.txt
评论
共有 条评论