Если вам разрешено использовать карту, вы можете сделать что-то простое (входящий псевдокод):
create empty Map m
for each Integer x in list1 do
if m does not contain key x
m.put(x, x)
else
m.put(x, m.get(x) + x)
endif
done
Ваш результат - значения m (который является коллекцией).
Редактировать: Вы сказали, что у вас есть LatLng вместо целых чисел - я не знаю LatLng, но после быстрого Google я бы сделал снимок следующего, предполагая, что вы хотите "добавить" ваши латинские баллы:
create empty Map<LatLng, LatLng> m
for each LatLng x in list1 do
if not m.containsKey(x)
m.put(x, x)
else
m.put(x, LatLng.newInstance(m.get(x).getLatitude() + x.getLatitude(),
m.get(x).getLongitude() + x.getLongitude()))
endif
done
Единственная проблема, которую я вижу здесь, состоит в том, что это m.containsKey(x)
зависит от правильной реализации equals
, что я не уверен после прочтения этого