Здравствуйте!
Недавно писал программу решения одной задачи в java, в ней в цикле шел перебор возможных решений. Решение представляет собой массив известной длины. Создал множество таких массивов solutions, в которое в цикле добавлял подходящие решения (они были в массиве sol):
solutions.add(sol);
Первое найденное решение добавлялось, а вот последующие уже нет. Первая мысль -- решение повторяется, но нет, они все оригинальные... Решения стали добавляется после добавления процедуры clone():
solutions.add(sol.clone());
Почему первый вариант команды не добавлял элементы, а второй -- добавлял?
ПЕРЕЙДИТЕ В ПОЛНУЮ ВЕРСИЮ