Skip to main content

Difference between DFA and NFA


DFA NFA
It is called deterministic finite automata It is called non-deterministic finite automata
For Every symbol of the alphabet, there is only one state transition in DFA. We do not need to specify how does the NFA react according to some symbol.
DFA cannot use Empty String transition. NFA can use Empty String transition.
DFA can be understood as one machine. NFA can be understood as multiple little machines computing at the same time.
DFA will reject the string if it end at other than accepting state. If all of the branches of NFA dies or rejects the string, we can say that NFA reject the string.
Backtracking is allowed in DFA. Backtracking is not always allowed in NFA.
DFA can be understood as one machine. NFA can be understood as multiple little machines computing at the same time.
DFA will reject the string if it end at other than accepting or final state. If all of the branches of NFA dies or rejects the string, we can say that NFA reject the string.
DFA is more difficult to construct. NFA is easier to construct.
-------------------------------------

Posted By -