@Egolds
.NET Разработчик

C# Как отсортировать символы вставкой?

Как сортировать цифры - это понятно.
Но вот как быть с символами?

Есть две строки:
string input = "AAAABBBCCDDDHH";
string willbe = "AABCHHDACBDDAB";


Нужно input превратить в willbe, методом сортировки вставками либо деревом, и чтобы при большой длине строк сортировка выполнялась быстрее 5 секунд.
Строки всегда имеют одинаковую длину и каждый символ повторяется одинаковое кол-во раз в каждой строке.

Прошу помощи.
  • Вопрос задан
  • 456 просмотров
Решения вопроса 1
VoidVolker
@VoidVolker Куратор тега C#
Dark side eye. А у нас печеньки! А у вас?
  1. Сопоставляем каждому символу во второй строке число-индекс этого символа;
  2. По каждому символу в первой строке ищем тот же символ во второй строке и сопоставляем текущему символу число индекс второго символа;
  3. Удаляем из второй строки найденный символ — т.е. символы повторяются нужно сопоставить символы один к одному;
  4. Сортируем первую строку по номерам символов — при условии совпадения числа одинаковых символов в строках, результат будет соответствовать второй строке.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы