У меня есть две структуры данных (List<ArrayList<String>>
), как показано ниже
parentList: [[1, 11], [2, 11], [3, 11], [4, 11]]
childList: [[2, 11], [1, 11], [56], [4, 11], [3, 11], [5, 11], [6], [6]]
Я хочу, чтобы childList
сохранил все элементы, присутствующие только в parentList
, сохраняя порядок вставки. я, е:
childList: [[2, 11], [1, 11], [4, 11], [3, 11]]
Размер parentList
составляет около 500
, а childList
- около 50K
.
Я попробовал:
childList.retainAll(parentList);
При увеличении размера childList
время, затрачиваемое на retainAll
, резко возрастает.
Использование LinkedHashSet
повышает производительность по сравнению с List
, но не до ожидаемого уровня.
Есть ли другой способ выполнить требование, отличное от retainAll
, или есть способ оптимизировать ту же операцию?