В данном тексте найти наиболее часто встречающуюся последовательность символов максимальной длины
2009
Для написания программы, которая будет искать в тексте последовательность символов максимальной длины, встречающуюся чаще всех остальных последовательностей, необходимо составить историю действий. Программа будет делить строку на равные части, сначала на 2, потом на 3 и так до длины строки, и сравнивать первую часть последовательности со второй.
Например, строку “aabb” при делении на 2 получаем две последовательности: “aa” и “bb”, затем “aa” сравниваем с “bb”. Если первая последовательность равна второй, то указываем, что последовательность “aa” встречается в тексте 2 раза, иначе 1 раз. В данном случае “aa” встречается 1 раз. В конце выполняем поиск из последовательностей символов, которые встречаются наиболее часто, и выбираем последовательность максимальной длины.
Запоминать последовательности и количество вхождений этих последовательностей будем в структуре, создадим ее:
public struct Symbols
{
string words;
int kolvo;public Symbols(string w, int k)
{
words = w;
kolvo = k;
}
public string Words
{
get { return words; }
set { words = value; }
}
public int Kolvo
{
get { return kolvo; }
set { kolvo = value; }
}
};
Чтобы не добавлять в структуру одинаковые последовательности, напишем функцию, которая будет возвращать логическую “ложь” в том случае, если последовательность уже имеется в структуре: Подробнее »
