Пример #1
0
        static bool IsPalindrome(CharLinkedList linkedList)
        {
            StringBuilder sb1     = new StringBuilder();
            StringBuilder sb2     = new StringBuilder();
            CharStack     stack   = new CharStack(new CharLinkedList());
            CharNode      current = linkedList.Head;

            while (current != null)
            {
                char value = current.Value;
                sb1.Append(value);
                stack.Push(value);
                current = current.Next;
            }
            while (!stack.IsEmpty())
            {
                sb2.Append(stack.Pop());
            }
            return(sb1.ToString() == sb2.ToString());
        }