В массиве из n элементов, если n/2 являются повторяющимися элементами, а остальные являются различными, мы могли бы использовать алгоритм Лас-Вегаса для получения повторяющегося элемента в o (logn) времени.Анализ времени выполнения алгоритма Лас-Вегаса
Существует еще один вопрос, который гласит: каково минимальное количество повторений, необходимых для выполнения этого алгоритма o (logn), т.е. (n/k повторяющихся элементов, где k =?), И какова продолжительность выполнения, если повторяющийся элемент является корневым (п)?
В моем результате сказано, что это не o (logn), если повторяющийся элемент является корнем (n), но я не могу найти свободную привязку к этой проблеме, используя алгоритм Лас-Вегаса. Помощь будет оценена.
P.S .: Вам, возможно, потребуется улучшить этот алгоритм. – 123
Я знаю, что «лас-вегас» является «типом» алгоритма. и здесь сублинейная временная граница. это поддерживается для линейно упорядоченных повторяющихся элементов. для root (n) результат: -logbase (n). где base = {(n * root (n))/(n * root (n) -root (n) +1)} .. это справедливо при n> = 2. если вы получите другой результат, отправьте его здесь. И это не домашнее задание. Это просто хорошая проблема, которую я взял и хотел поделиться. Спасибо. :) – user624438