The MAP sequence estimation problem previously stated can also be viewed as the problem of finding the shortest route [1] through a certain graph. By thinking in this similarity one can see the natural recursivity of the Viterbi algorithm.
To illustrate how the Viterbi algorithm obtains this shortest path, we need to represent the Markov process in an easy way. A state diagram, like one shown in Fig. 2, is often used. In this state diagram, the nodes (circles) represent states, arrows represent transitions, and over the course of time the process traces some path from state to state through the state diagram.