Понял, спасибо. Что касается самого решения, то данный код я подсмотрел, долго не мог сам додуматься, вроде разобрался, но хотелось бы построчного объяснения программы начиная с цикла for где-то посмотреть. Не сможете помочь и расписать?
Ну по заполнению списка в цикле for думаю все понятно.
int count = 1; // переменная-счетчик ( изначально считаем, что повторяющихся чисел нет)
int result = 1; // переменная для записи самой длиной повторяющейся последовательности)
for (int i = 0; i < list.size() - 1; i++) { // цикл заканчиваем на предпоследнем элементе, чтобы не вылезти за границу списка
if (list.get(i + 1).equals(list.get(i))) { // проверяем элемент с индексом i и следующий после него на совпадение
count++; // если элементы совпали добавляем счетчику +1
if (result < count) result = count; // если текущая макс последовательность меньше значения счетчика, меня значение макс последовательности ( переменной result)
}
else count = 1; // если при проверки числа не совпали обнуляем наш счетчик
}
п.с. Если что-то не понятно, спрашивай :)
Спасибо, стало более понятно. Хочу уточнить, переменная result нам нужна только лишь для записи в него результата (максимальной длины последовательности), т.к. имея одну переменную count и обнулив ее, значение было бы утеряно? Я правильно понимаю? Заранее спасибо за уделенное время!