gpt4 book ai didi

java - DFA 字符串验证

转载 作者:塔克拉玛干 更新时间:2023-11-02 20:15:28 28 4
gpt4 key购买 nike

我有一个程序,它只是将所有状态作为一组状态作为输入。然后下一个输入是状态集合中的初始状态,然后是最终状态集合。

接下来是我在状态之间进行的一组转换。

例如:q0,1,q1

这意味着在输入 1 上存在从 q0 到 q1 的转换。

对于每个状态,都会输入转换。

但在这里我面临的是引用可以以随机的方式跳跃也就是说,对于非重复字符,转换可以是 n 次转换,因此我想为每个状态动态维护一个 hashmap 对象。

我怎样才能做到这一点?

最佳答案

由于这是一个 DFA,维护从(状态,输入)对到结果状态的单个 HashMap 可能更容易和更有效。 DFA 的属性保证了转换关系可以被视为以这种方式的函数。

所以,维护一个HashMap<StateInput, State> trans并做 trans.put(StateInput(q0, 1), q1)对于你给出的例子,在哪里

class StateInput {
public State state;
public int input;
}

关于java - DFA 字符串验证,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7483179/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com