zoukankan      html  css  js  c++  java
  • 自动机实验

    #include<stdio.h>
    #define MAX 100
    typedef struct   //构造一个邻接表 用于存储NFA
    {
    char name;
    char line[MAX];

    }node;


    void tran(){     //专门做语句的转换操作



    }

    void automata(char R[],int i){
    int j = 0;
    int n = i;
    while(R[j] != '#'){
    if(R[i] == '(')
    {
    printf("//在这里是做把'()'里的字符串里的语句初步进行转换,进行递归分解");
    //在这里是做把'()'里的字符串里的语句初步进行转换,进行递归分解
    }
    else if(R[i] == '|'){
    printf("//在这里就是把A和B两个状态节点分成  语句1 | 语句2 分成两路连接");
    //在这里就是把A和B两个状态节点分成  语句1 | 语句2 分成两路连接
    }
    else if(R[i] == '*'){
    printf("//在这里就是把前一个状态节点进行自循环。");
    //在这里就是把前一个状态节点进行自循环。
    }
    else{
    //在这里进行一般的转换。
    printf("//在这里进行一般的转换");
    }


    j++;
    }

    }

    void main()
    {
    char R[MAX];
    int i=0;
    printf("请输入要转换的正规式: ");
    while(R[i-1] != '#'){
    scanf("%c",&R[i]);
    i++;
    }
    automata(R,i);    //用于转换正规式。
    }

  • 相关阅读:
    JDBC
    MySQL 事务
    MySQL 处理海量数据时一些优化查询速度方法
    MySQL 分支和循环结构
    MySQL 分页查询和存储过程
    Oracle PL/SQL异常、存储过程和触发器
    Oracle PL/SQL游标
    mysql主键问题
    spring-springmvc code-based
    AOP实现原理
  • 原文地址:https://www.cnblogs.com/Mrwhite/p/5017869.html
Copyright © 2011-2022 走看看