Показать сообщение отдельно
Старый 02.12.2011, 21:07
loover вне форума Посмотреть профиль Отправить личное сообщение для loover Найти все сообщения от loover
  № 1  
Ответить с цитированием
loover
 
Аватар для loover

Регистрация: Mar 2009
Сообщений: 357
По умолчанию поиск дупликатов в массиве и расстановка их без повторений

есть массив с повторяющимися элементами. некоторые их них могут следовать друг за другом (т.е. два одинаковых элемента расположены рядом). как можно отсортировать массив так, чтобы между двумя одинаковыми элементами стоял хотя бы один отличающийся?

пока есть функция, которая перебирает массив в цикле и если i == i + 1 извлекает i из массива, ставит его в конец, запускает эту же функцию и break. но проблема в том, что иногда возникает переполнение стека (наверное потому, что в конце массива скапливаются два одинаковых элемента и функция запускается бесконечно).


Последний раз редактировалось loover; 02.12.2011 в 21:17.