Является самым быстрым алгоритмом для поиска несортированного массива для линейного поиска элемента? Я имею в виду, я предполагаю, что комбинация слияния сортировки + двоичный поиск будет медленнее. Есть ли другие варианты? (в терминах алгоритмов, не включающих многопоточность)?Самый быстрый способ найти, существует ли элемент в несортированном массиве?
-1
A
ответ
4
Да, если массив несортирован, и это все, что вы знаете о его структуре, то самым быстрым способом поиска элемента является рассмотрение каждого, которое принимает линейное время. O (n).
Если вы собираетесь много искать массив, вы можете захотеть рассмотреть начальную сортировку, а затем вставить элементы в их правильный отсортированный индекс (используя двоичный поиск). Это означает, что у вас есть ваш первоначальный вид: O (n log n), но каждая вставка и поиск принимают O (log n). Все дело в компромиссах и лучше, чем O (1) Вставка и O (n) поиск.
Вы сказали, что не многопоточность, но это простой способ повысить производительность, несколько потоков смотрят на разные куски в списке.
Смежные вопросы
- 1. Самый быстрый способ найти дубликат в массиве
- 2. Самый быстрый способ определить, находится ли элемент в отсортированном массиве
- 3. Самый быстрый способ проверить, существует ли объект
- 4. Самый быстрый способ поиска результата в массиве
- 5. Каков самый быстрый способ найти все недостающие номера в несортированном массиве
- 6. Самый быстрый способ определить, существует ли запись
- 7. Самый быстрый способ узнать, существует ли запись
- 8. Быстрый способ найти самый большой массив в многомерном массиве?
- 9. Самый быстрый способ найти 2 недостающих числа в массиве
- 10. найти номер в несортированном массиве
- 11. Самый быстрый способ определения смещения в массиве
- 12. Самый быстрый способ найти уникальные значения в массиве
- 13. Самый быстрый способ найти товар в списке?
- 14. Самый быстрый способ найти индексы состояния в массиве numpy
- 15. Самый быстрый способ удалить таблицу (если существует)
- 16. Самый быстрый способ найти, если же структура существует в векторе
- 17. Самый быстрый способ проверить, равны ли все элементы в массиве
- 18. Самый быстрый способ найти подстроку в JAVA
- 19. Самый быстрый способ найти строку в C#?
- 20. Самый быстрый способ найти элемент с таким же значением атрибута
- 21. Коллекция Java. Самый быстрый способ найти, существует ли общий элемент между двумя наборами
- 22. Самый быстрый способ удалить элемент в списке
- 23. Самый быстрый способ найти элемент в отсортированном ArrayList
- 24. Самый быстрый способ найти максимальный частотный элемент в PHP
- 25. Каков самый быстрый способ увидеть, содержит ли элемент дочерний элемент?
- 26. Самый быстрый способ проверить, существует ли ключ в полке
- 27. Самый эффективный способ найти, существует ли значение в списке C#
- 28. Самый быстрый способ добавить элемент в массив
- 29. Самый быстрый способ получить количество уникальных элементов в массиве javascript
- 30. Самый быстрый способ найти NSManagedObject в NSSet