晚安,
假设我有一个实现 NFA/DFA 的类,它的转换存储在 .NET Dictionary 结构中,它接受一个输入单词并识别一组可从输入中以某种方式派生的单词。此外,假设自动机是一个通用模板,它可以应用于相同长度的不同单词,只需重新标记过渡字符。在 Dictionary 中对转换函数进行编码以便在运行时根据输入单词的字符重新标记转换函数的最佳方法是什么?
非常感谢你。
请参阅以下实现,它采用 NFA 并使用字典将其转换为 DFA(然后转换为图形),就像您自己一样:
我不确定它是否具有您正在寻求的动态重新标记功能,但它有很好的(在线)文档记录,因此您可能会得到很多想法来帮助您完成项目。
还有一篇关于 lambda 转换主题的好(更新的)文章,但文章的图片链接不再有效。但是,它确实附带了可下载的源代码FSAutomata.zip,您可以在阅读文章后检查它: