Difference between DFA and NFA

Deterministic finite automaton (DFA):

  • The transition from a state is to a single particular next state for each input symbol. Hence it is called deterministic.
  • Empty string transitions are not seen in DFA.
  • Backtracking is possible in DFA
  • Requires more space
  • A string is accepted by a DFA, if it transits to a final state

Nondeterministic finite automaton (NFA):

  • The transition from a state can be to multiple next states for each input symbol. Hence it is called non-deterministic.
  • NFA permits empty string transitions
  • In NFA, backtracking is not always possible
  • Requires less space.
  • A string is accepted by a NFA, if at least one of all possible transitions ends in a final state

Leave a Reply