We use cookies to provide you with a great user experience, analyze traffic and serve targeted promotions.   Learn More   Accept

Check if a given string is Palindrome


Expectation

A Palindrome is defined as a phrase or a number which when reversed also gives the same phrase or number. For example, the word abcdcba is a palindrome because even when you read the string from end to the beginning you'll get the same string as the original. Some real words such as malayalam, madam, refer, reviver, noon, mom and such are all palindromes in general use.


Logic

Checking for a palindrome string is similar to how we check for a palindrome number, except that we go with full-length character operations instead of modulo divisions.


        public static bool IsPalindromeString(string input)
        {
            var reverse = new char[input.Length];

            for (int j = 0, i = input.Length - 1; i >= 0; j++, i--)
            {
                reverse[j] = input[i];
            }

            for (int i = 0; i < input.Length; i++)
            {
                if (input[i] != reverse[i])
                {
                    return false;
                }
            }

            return true;
        }
        

How it works:

We begin by copying the input string in reverse into another character array, and then examine both the strings character by character for any inequality. If none found, then its a palindrome else its not.

Output:

Enter input: abcdcba
abcdcba is Palindrome? : True

Enter input: abcabc
abcabc is Palindrome? : False

Strings Loops •  Added one month ago

Sponsored Links