|
ru.algorithms- RU.ALGORITHMS ---------------------------------------------------------------- From : Andrey Tarasevich 2:5020/175.2 13 Aug 2003 00:42:45 To : Anton Mosin Subject : найти повторяющиеся элементы -------------------------------------------------------------------------------- Tue Aug 12 2003 20:14, Anton Mosin wrote to Yuri Burger: YB>> В случае C++ пользовать std::unique алгоритм, или аналог среди YB>> методов контейнера, и не парить себе мозги насчет изобретения YB>> велосипедов ;) AM> можно поподробнее, можно ли этот алгоритм реализовать на Delphi? 'std::unique' - это просто название функции, которая проходит по отсортированной последовательности элементов и удаляет повторения "поджимания" последовательности (т.е. еопирует последующие элементы поверх поаторяющихся). Так что это ничем не отличается от того, что тебе уже предложили. Отсортируй свой массив (или построй сортирующий индекс). Повторения после этого находятся тривиальным образом. Hо для того, чтобы выбрать наиболе оптимальное решение, неплохо было бы знать, что именно иы собираешься делать с этими повторениями. Зачем ты из ищешь? Хочешь удалить их из массива? Или просто найти, какие элементы повторяются? Можно ли при этом нарушать относительный порядок элементов исходного массива? Или исходный массив вообще не разрешается никак модифицировать? Исходный массив всегда окончателен? Или возможно поступление дополнительных элементов позже? Best regards, Andrey --- ifmail v.2.15dev5 * Origin: FidoNet Online - http://www.fido-online.com (2:5020/175.2) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.algorithms/3300ce545152.html, оценка из 5, голосов 10
|