Не могу понять как вывести элементы самой длинной последовательности. Подскажите пожалуйста метод решения. Заранее спасибо. Мои рассуждения привели к такому коду, который не работает на данный момент.
package com.javarush.task.task18.task1803;

import java.io.BufferedReader;
import java.io.FileInputStream;
import java.io.InputStreamReader;
import java.lang.reflect.Array;
import java.util.ArrayList;
import java.util.Collections;

/*
Самые частые байты
*/

public class Solution {
    public static void main(String[] args) throws Exception {
        BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
        FileInputStream file = new FileInputStream(reader.readLine());
        ArrayList list = new ArrayList();
        ArrayList sort1 = new ArrayList();
        ArrayList sort2 = new ArrayList();
        while (file.available() > 0)
        {
            list.add(file.read());

        }
        file.close();

        Collections.sort(list);

        for (int i = 1; i<list.size(); i++)
        {

            if (list.get(i-1).equals(list.get(i))) {
                sort1.add(list.get(i-1));

            }
            else
            {
                if (sort1.size() > sort2.size())
                {
                    sort2 = sort1;
                    sort1.clear();
                }
                else
                {
                    sort1.clear();
                }
            }

        }
        for (int i = 0; i<sort2.size(); i++) {

            System.out.print( sort2.get(i) + " " );
        }

    /*    for (int i = 0; i<list.size(); i++)
        {
            System.out.println(list.get(i));
        }
        */

    }
}