我对这些东西真的很新,所以我为这里的noobishness道歉.
构建一个Deterministic Finite Automaton识别以下语言的DFA:
L= { w : w has at least two a's and an odd number of b's}.
Run Code Online (Sandbox Code Playgroud)
每个部分的自动化(at least 2 a's, odd # of b's)很容易单独制作......任何人都可以解释一种系统的方式将它们合二为一吗?谢谢.
假设我们有自定义数据类型:
data Person = Person { first_name :: String,
last_name :: String,
age :: Int
} deriving (Ord, Eq, Show)
Run Code Online (Sandbox Code Playgroud)
我们还说我有这些Person数据类型的列表.我已经创建了一个按顺序对这些人进行排序的函数,但这仅限于每个人的第一个值first_name.我要做的是修改Person数据类型,以便此sort函数按年龄而不是first_name排序(除了交换值顺序以便年龄是第一个).我知道我需要使用instance关键字为Ord 编写自己的比较函数.这就是我被困住的地方.谁能帮我吗?
编辑:是的,这是硬件 - 不幸的是我需要按照我描述的方式来做.
我正在尝试在空格和制表符处拆分字符串.
char * token = strtok(input, " \t");
Run Code Online (Sandbox Code Playgroud)
仅适用于空间.我究竟做错了什么?
在所有图灵机扩展中(例如双向无限磁带,RAM,多个读/写磁头和非确定性),它们中的任何一个都允许TM来决定以前不可判断的问题吗?