вторые сутки сижу никак не пойму алгоритм
public static void main(String[] args) throws IOException {
        ArrayList<String> list = new ArrayList<String>();
        list.add("роза"); //0
        list.add("лоза"); //1
        list.add("лира"); //2
        list.add("вода");
        list.add("кора");
        list = fix(list);

        for (String s : list) {
            System.out.println(s);


        }
    }

    public static ArrayList<String> fix(ArrayList<String> list) {
        for (int i = 0; i < list.size(); i++) {

            String str = (String) list.get(i);
            char[] ch = str.toCharArray();

            for (int j = 0; j < str.length(); j++) {
                if (ch[j] == 'р' && ch[j] != 'л')
                {
                    list.remove(i);
                }
                if (ch[j] == 'л' && ch[j] != 'р')list.add(i, str);
            }


        }

        return list;
    }
}