# Design Turing Machine to reverse string consisting of aâ€™s and bâ€™s

Our aim is to design a Turing machine (TM) to reverse a string consisting of a’s and b’s over an alphabet {a,b}.

Input − aabbab

Output − babbaa

## Algorithm

Step 1: Move to the last symbol, replace x for a or x for b and move right to convert the corresponding B to          „aâ€Ÿ or „bâ€Ÿ accordingly.
Step 2: Move left until the symbol left to x is reached.
Step 3: Perform step 1 and step 2 until „Bâ€Ÿ is reached while traversing left.
Step 4: Replace every x to B to make the cells empty since the reverse of the string is performed by the             previous steps.

The transition diagram for Turing Machine (TM) is as follows −

Let us consider an example to check whether the given input is getting reverse or not

Input string - abb.

Expected output - {bba}

Therefore, the TM is as follows −