Как переставить элементы в списке, чтобы одинаковые значения рядом не стояли?
Дан список, например: a=[1,2,3,3,4,5,5,5,6,7,8,9,9], необходимо переставить элементы списка, чтобы получилось например так: a^=[1,2,3,4,3,5,6,5,7,5,9,8,9]. Т.е. одинаковые элементы рядом не стоят.
Ответы (1 шт):
Автор решения: Aziz Umarov
→ Ссылка
- Пробегаете по массиву и вырезаете из неги повторяющиеся элементы в другой.
- У вас получился массив не повторяющихся и массив повторений.
- Пробегаете по дубликатам до конца и пытаетесь вставить в любое место первого предварительно проверив соседние. Если соседний совпадают идете дальше до конца. если конец достигнут и вы не вставили элемент то перестановка не возможна.