Это вопрос интервью. Если у вас есть миллионы пользователей и файлы/каталоги, как вы планируете хороший способ найти файлы или каталоги данного пользователя и путь? Если у файлов/каталогов есть метки времени, как вы рассчитываете количество файлов/каталогов, добавленных в день для каждого пользователя? вы можете использовать свой путь для вставки файлов/каталогов.Быстрый поиск файлов или каталогов данного пользователя и пути, когда есть много пользователей и файлов/каталогов
2
A
ответ
1
Вы можете сохранить их в таблице базы данных (поля user, file, date) и сделать простой запрос на них. СУБД делают индексацию, чтобы сделать ее быстрой. Если вы не хотите использовать СУБД, например mysql или MS Access, SQL server или Oracle, вы можете использовать некоторые приложения для поиска с открытым исходным кодом, такие как Lemur.
0
Если вы не хотите использовать базу данных, вы можете использовать комбинацию Dictionary
и Binary Search Tree
.
key
Dictionary
будет user
.
value
его с 2 свойства:
Dictionary
сday
ы какkeys
иnumber of entries that day
, какvalues
.- A
Binary Search Tree
сpath
s разных файлов и папок какnodes
.
Дает n
общее количество разных файлов и папок.
Он построен в O(nlgn)
, а необходимые операции выполняются в O(lgn)
.
Смежные вопросы
- 1. Поиск файлов пользователя по относительному и абсолютному пути
- 2. Поиск каталогов для тонны файлов?
- 3. Yii2: Поиск файла и получение пути в дереве каталогов
- 4. Быстрый поиск рядом пользователей с использованием PostGIS
- 5. Python - быстрый поиск файлов
- 6. Сжатие файлов и каталогов
- 7. Быстрый поиск и сортировка
- 8. Дерево каталогов и файлов
- 9. Связывание файлов и структурирование каталогов
- 10. Bash Script добавить, удалить, пользователей, каталогов и файлов
- 11. Скопируйте много файлов и каталогов, используя диалог прогресса системного файла?
- 12. Sql эффективный и быстрый поиск
- 13. Быстрый поиск и замена
- 14. Создание каталогов/подкаталогов и файлов
- 15. Вставка и быстрый поиск
- 16. Python: Поиск идентификатора пользователя и перемещающихся каталогов (Windows)
- 17. Защита файлов и каталогов в Интернете
- 18. Поиск имен файлов в рамках данного соглашения
- 19. Список каталогов и поиск файлов с определенными строками в имени
- 20. Команды Linux для извлечения всех файлов, размера и пути файлов из всех каталогов и подкаталогов
- 21. Поиск пути текущего пользователя
- 22. Поиск и добавление пользователей Twitter?
- 23. Самый быстрый способ загрузить много js-файлов и переменных
- 24. Поиск пути к каталогу пользователей
- 25. Поиск каталогов с именем «архив» и удаление файлов
- 26. Поиск пользователей AD для пользователя
- 27. Переписывание файлов и каталогов Lighttpd
- 28. Загрузка файлов и структура каталогов
- 29. Удаление учетной записи пользователя и всех файлов/каталогов
- 30. .htaccess и перенаправление несуществующих файлов и каталогов
Можете ли вы рассказать немного о наборе с разными датами? – user1258656
Можете ли вы немного рассказать о наборе с разными датами? вы хотите создать связанный список (узел списка имеет дату, количество файлов/каталогов). – user1258656
Набор подобен словарю без значений - только отдельные ключи. О датах. Если на день 3/11/2012 записано n записей, оно будет введено n раз в набор, но будет представлено как один элемент, который будет 3/11/2012. Файл или папка будут иметь полную дату, например, 3/11/2012 15:12:14, но набор будет содержать только разные дни. –