Убрать из строки пары символов, идущие подряд - C#
Формулировка задачи:
Всем привет! Подскажите пожалуйста, как из строки убрать 2 символа идущие подряд, а если потом опять оказалось 2 символа, то и их тож удалять пример "fdssd" ->"f"
Решение задачи: «Убрать из строки пары символов, идущие подряд»
textual
Листинг программы
using System; using System.Collections.Generic; using System.Diagnostics; using System.Linq; using System.Text; namespace NETExperiments { class Program { static void Main(string[] args) { string source = "helleus"; string expected = "hus"; Stack<char> stack = new Stack<char>(); foreach (char c in source) { if (!stack.Any()) { stack.Push(c); continue; } if (stack.Any() && stack.Peek() == c) { stack.Pop(); } else { stack.Push(c); } } string result = new StringBuilder().Append(stack.Reverse().ToArray()).ToString(); Console.WriteLine(result); Debug.Assert(result.Equals(expected)); Console.ReadKey(); } } }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д