Публикации по теме 'trie'
Реализовать Trie в JavaScript
Реализовать Trie в JavaScript
Поработав с сайтами, которые ежегодно посещают более 50 миллиардов веб-сайтов с Higglo Digital , я пишу на технические темы и учу инженеров иметь прочную основу, которая поможет им продвинуться по карьерной лестнице. Я также создаю потрясающие продукты для цифровых кочевников — посмотрите!
Попытки, также известные как деревья префиксов, представляют собой структуру данных, используемую для эффективного хранения и поиска строк. Они обычно..
Структура данных Trie: обзор
Trie — это древовидная структура данных, которая в основном используется для хранения данных, к которым необходимо часто обращаться. Это связано с тем, что это сводит к минимуму сложности поиска, а данные могут быть получены за время O (M), где M — длина данных. Это можно визуализировать с помощью графика.
Этапы построения структуры данных Trie:
Создайте пустой корневой узел Вставьте новые данные в качестве дочерних элементов в корневой узел Перед вставкой данных перейдите от..
Добавить автозаполнение с попытками
Представьте себе проблему любимой поисковой системы. По мере того, как вы вводите текст в поле, всплывают предложения о том, что должно быть дальше. Как выполнить такую сложную операцию - перебрать огромные объемы данных, чтобы найти все, что начинается с введенных вами символов.
Оказывается, эта проблема может быть решена довольно просто, если просто умно хранить информацию в древовидной структуре.
Введите Trie
Trie - это структура данных, в которой значения хранятся в виде..
Генерация пошаговой формы из набора конфигураций
Генерация пошаговой формы из набора конфигураций
Контекст
В Ergeon мы создали веб-инструмент для 3D-моделирования и составления предложений, чтобы помочь нашим клиентам спланировать, спроектировать и составить бюджет для своего проекта забора. Клиенты переходят на наш веб-сайт , где они могут настроить желаемую конфигурацию забора и просмотреть, как он будет выглядеть в 3D. Существует более миллиона возможных конфигураций для построения ограждения, поэтому для облегчения..
Введение в попытки
На недавнем занятии по информатике мне дали решить задачу, связанную с быстрым доступом и эффективным хранением множества телефонных номеров и связанных с ними данных о расходах. Сложность заключалась в том, что некоторые из сохраненных телефонных номеров были просто префиксами, например, код города Сан-Франциско +1415. При поиске стоимости номера телефона, если точное совпадение не найдено, то следует использовать наиболее подходящий префикс.
Что я пробовал
Наш учитель потребовал,..
Ускоренный курс попыток
Попробуй, попробуй, попробуй еще раз!
Аудитория
Эта статья предназначена для разработчиков, имеющих практический опыт работы с деревьями (покопаться в моей статье можно здесь ). В нем дается краткий обзор попыток и их применения, а в заключение приводится работающий пример задачи, ориентированной на попытки.
Аргумент
Попытки — это тип древовидной структуры данных, он содержит узлы, ребра, корень и отношения родитель-потомок. Тем не менее, trie действует как хранилище данных..
Вопросы по теме 'trie'
Попробуйте реализацию
Я пытаюсь реализовать очень простой Trie на Java, который поддерживает 3 операции. Я бы хотел, чтобы у него был метод вставки, метод has (т. е. определенное слово в дереве) и метод toString для возврата дерева в виде строки. Я считаю, что у меня...
31823 просмотров
schedule
11.08.2022
Сохранение попытки на диск
Это звучит как простой вопрос, но я не знаю, как найти на него ответ.
У меня есть реализация trie на С#, которая будет хранить около 80 тысяч слов из файла словаря. Загрузка всех этих слов занимает довольно много времени (более 5 минут). Мне было...
3391 просмотров
schedule
20.09.2023
реализация попытки новичка F # пошла не так
Я пытаюсь реализовать структуру данных trie в F #. У меня проблемы. Я не могу отладить функцию вставки слов. Ни одна из моих точек останова внутри этой функции не достигнута, что-то падает, но я не вижу никакой ошибки. Также у меня есть серьезные...
410 просмотров
schedule
29.07.2022
Почему хеш-карты лучше, чем три-карты?
Под картой trie я подразумеваю ассоциативный массив, в котором полезные данные хранятся в trie вместо хеш-таблицы.
Когда я использую хеш-карту / таблицу, ключи, которые я использую, обычно являются строками. Каковы преимущества хэш-карты по...
4457 просмотров
schedule
17.08.2023
Эффективная реализация trie для .net
Я ищу реализацию trie для .net.
Я планирую использовать его в качестве структуры индекса для моего пула объектов в памяти. Он не обязательно должен быть потокобезопасным (поскольку его будет обновлять только один поток), но он должен корректно и с...
1042 просмотров
schedule
19.05.2022
Попытки против троичных деревьев поиска для автозаполнения?
Я прошел через попытки и троичные деревья поиска, и у меня есть некоторые вопросы по ним. У меня есть ответы в Google, но я не могу получить конкретный ответ на них. Итак, вот мои вопросы.
Если попытки неэффективны, а TST сочетают в себе...
8376 просмотров
schedule
03.12.2022
Структура данных Trie в OCaml
Я пытаюсь создать trie в OCaml:
type ('a, 'b) trie = Nil | Cons of 'a * 'b option * ('a, 'b) trie list;;
(* find place to insert key in a list of tries *)
let rec findInsert key x =
match x with
[] -> Nil
| x::xs -> let...
1009 просмотров
schedule
19.08.2022
новый не вызван, но память выделена
Я написал простую реализацию Trie . Вот исходный код:
#include <string>
#include <map>
typedef unsigned int uint;
class Trie {
public:
class Node {
public:
Node(const char & _value);
~Node();...
221 просмотров
schedule
05.08.2023
Общая реализация Trie Haskell
Мне нужна была общая реализация Trie на Haskell, но я не смог ее найти.
Мне были реализованы мои собственные функции (здесь только ключи, мне не нужны данные по Trie), но я хочу найти хорошая реализация Trie в Haskell для будущего...
2086 просмотров
schedule
09.06.2023
Использовать Trie или SortedSet для словаря?
У меня возникли вопросы об использовании Tries / SortedSets для словаря.
Что более эффективно для поиска?
Что более эффективно для виртуальной памяти?
Есть ли другие преимущества / недостатки любой структуры при использовании для словаря?...
650 просмотров
schedule
25.04.2023
Завершение проверки функции по дереву
Мне трудно убедить Agda выполнить проверку завершения функции fmap ниже и аналогичных функций, определенных рекурсивно в структуре Trie . Trie - это дерево , домен которого является Type , тип уровня объекта, состоящий из единицы, продуктов...
181 просмотров
schedule
18.05.2023
Производительность Hash Array Mapped Trie
Я пытаюсь реализовать Hash Array Mapped Trie на Java. Раньше я думал, что эта структура данных должна быть более эффективной с точки зрения памяти, чем Hash Map, но когда я сделал первые измерения памяти с помощью Visual Vm, я обнаружил, что моя...
1226 просмотров
schedule
16.05.2023
Удаление всего из дерева дерева
У меня всегда возникают проблемы, когда я удаляю все узлы из дерева. Я пытаюсь освободить всю память, выделенную при создании дерева дерева.
Я предполагаю создать функцию remove_all
Достаточно ли удалить только "корень"
что-то вроде этого:...
4906 просмотров
schedule
24.07.2023
Каков размер префиксного дерева (trie), содержащего все английские слова?
Зная, что в английском словаре около 200 тысяч слов, а в алфавите 26 букв или около того.
5661 просмотров
schedule
06.09.2022
Попробуйте в C: указатель обнаружен как нулевой. Причины утечки памяти
Я прохожу онлайн-курс МООК по информатике в Гарварде ( CS 50 ), а для одного из наборов задач вам нужно загрузить словарь в какую-то структуру данных (я выбрал Trie), а затем использовать указанную структуру данных для проверки информации. Я нахожусь...
245 просмотров
schedule
11.11.2022
Простая реализация Trie
Мне нужно реализовать Trie (на Java) для проекта колледжа. Trie должен иметь возможность добавлять и удалять строки (для фазы 1).
Я тратил несколько часов каждый день (в течение последних нескольких дней), пытаясь понять, как это сделать, и...
1598 просмотров
schedule
10.08.2022
Список `k` слов, начинающихся с фиксированного префикса, в порядке убывания их частоты
У меня есть список примерно из 10^5 английских слов и их начальная частота. Я хочу написать программу предложения завершения слов, которая будет возвращать список максимальных k слов, начиная с заданного префикса, отсортированных в порядке...
477 просмотров
schedule
06.04.2023
Поиск поддерева по ребру в OCaml — реализация интеллектуального ввода текста T9
Я новичок в OCaml, и мне трудно реализовать ряд функций для создания программы прогнозирования текста T9. Например, если мое слово «Собака» — список целых чисел будет [3;6;4]. У меня уже есть функция сопоставления с образцом для связывания слов со...
269 просмотров
schedule
06.01.2023
NullPointerException при удалении тройного слова
Ниже приведен код. Индекс массива представляет маленькие символы (a-z), а индекс равен 26 (количество символов в английском алфавите). Это словарь слов, в котором дочерний элемент [знак ascii-значение-97] указывает на следующий узел. Концу слова...
203 просмотров
schedule
10.04.2022
Javascript: найти ровно 10 слов в дереве префиксов, которые начинаются с заданного префикса
У меня есть дерево (также называемое префиксным деревом). Учитывая префикс, я хочу получить список из десяти слов, начинающихся с префикса.
Уникальность этой проблемы в том, что мне нужны только 10 слов, начинающихся с данного префикса, а...
766 просмотров
schedule
22.08.2022