Having a bit of trouble designing a turing-machine which recognizes the following language. The alphabet is $\Sigma$ = {a,b,c}.
$$ L_2 = \{wcw^R | w \epsilon \{a,b\}^*\} $$
The part which messes me up is the initial branching portion where the start value can take two paths. A high-level explanation would also be helpful if anything.
The Turing Machine can be implemented as follows :
At start, move to the center of the input ( till you get a 'c'). Go to the right, remember that character and overwrite it with 'c'. Then move left till you see a non-'c' character. If they both are not the same, return NO. If they are, overwrite it with 'c' and again move right till you see a non-'c' character. Keep doing this till the length of the input string is exhausted.