.NET 4.x Список слов расположить так, чтобы каждое последующее слово начиналось с последней буквы предыдущего - C#

Узнай цену своей работы

Формулировка задачи:

Имеется список N слов.Расположите его так,что бы каждое последующее слово начиналось с последней буквы предыдущей.Слова могут быть рускоязычными или англоязычными и не должны повторяться.В качестве слов можно взять имена людей,названия растений,городов.

Решение задачи: «.NET 4.x Список слов расположить так, чтобы каждое последующее слово начиналось с последней буквы предыдущего»

textual
Листинг программы
static void Main(string[] args)
{
    List<string> src = new List<string>();
 
    src.Add("Москва");
    src.Add("Оренбург");
    src.Add("Ирбит");
    src.Add("Купино");
    src.Add("Невельск");
    src.Add("Грязи");
    src.Add("Абакан");
 
    Console.WriteLine("Исходный перечень:");
    foreach (var item in src)
        Console.WriteLine(item);
    Console.WriteLine("-----\n");
 
    List<string> result = new List<string>();
 
    result.Add(src[0]);
    src.RemoveAt(0);
 
    string str = result[0];
 
    while (src.Count > 0)
    {
        if (str == null)
        {
            result.Add("===Перечень прервался===");
            break;
        }
        foreach (var item in src)
            if (item.ToLower()[0] == str[str.Length - 1])
            {
                str = item;
                break;
            }
        result.Add(str);
        src.Remove(str);
    }
 
    Console.WriteLine("То что получилось перечень:");
    foreach (var item in result)
        Console.WriteLine(item);
 
    Console.ReadKey();
}

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

9   голосов , оценка 4.111 из 5
Похожие ответы