Fast and Easy Levenshtein distance using a Trie
https://stevehanov.ca/blog/fast-and-easy-levenshtein-distance-using-a-trie
#HackerNews #LevenshteinDistance #Trie #DataStructures #Algorithms #Efficiency
Fast and Easy Levenshtein distance using a Trie
https://stevehanov.ca/blog/fast-and-easy-levenshtein-distance-using-a-trie
#HackerNews #LevenshteinDistance #Trie #DataStructures #Algorithms #Efficiency

<img src="http://stevehanov.ca/blog/images/acer.jpg"/> If you have a web site with a search function, you will rapidly realize that most mortals are terrible typists. Many searches contain mispelled words, and users will expect these searches to magically work. This magic is often done using levenshtein distance. In this article, I'll compare two ways of finding the closest matching word in a large dictionary. I'll describe how I use it on rhymebrain.com
[Перевод] Структуры данных на практике. Глава 11: Префиксные деревья и базисные деревья
Кошмар с автозавершением Наше префиксное дерево было в 8 раз медленнее хэш-таблицы. И оно потребляло 128 МБ памяти, в отличие от хэш-таблицы с 24 МБ. Такого не должно было произойти. Префиксные деревья — стандартное решение для автозавершения: поиск за O(k), где k — длина строки вне зависимости от размера датасета. Идеально подходит для сопоставления префиксов. Обычно всегда используется для автозавершения, проверки правописания и таблиц IP-маршрутизации. Мой коллега предложил использовать префиксное дерево для функции автозавершения в нашем инструменте командной строки. Поиск в нём должен был выполняться по 50 тысячам команд и опций. Учебники говорили, что это правильный выбор. Поэтому мы реализовали префиксное дерево. Результаты бенчмарка оказались ужасными: Префиксное дерево было в 8 раз медленнее простой хэш-таблицы. И оно использовало 128 МБ памяти , в то время как хэш-таблица — всего 24 МБ. Где мы ошиблись?
Love 😍 such articles that cover a topic in depth:
“Modern Perfect Hashing For Strings” [2023], Wojciech Muła (http://0x80.pl/notesen/2023-04-30-lookup-in-strings.html).
On HN: https://news.ycombinator.com/item?id=35764176
#Hashing #PerfectHashing #Lexing #LexicalAnalysis #Programming #Algorithms #Trie #gperf #Tokenization
New post on our blog! 🌳
Let's explore the tree - "Trie", great for efficiently identifying forbidden words in a given text, such as filtering offensive content and much more!
Link to the full blog post in the first comment 👇
☑️ Day 27/100: #Leetcode daily question
🟨 Question: 1233. Remove Sub-Folders from the Filesystem
Easy question
🐈⬛ Check out my #GitHub where I post all the daily streak 🔥 questions and #LeetcodeContest 🏆 solutions
🔗 Solution Link: https://github.com/akshatsingh1718/leetcode/tree/main/removeSub-FoldersfromtheFilesystem
🔗 My Leetcode Github: https://github.com/akshatsingh1718
Изучаем новые структуры данных для iOS разработчика
Мобильные разработчики редко сталкиваются в работе со сложными структурами данных. Как правило, в рутинных задачах вполне достаточно уметь использовать Array , Dictionary и Set . Но сегодня не об этом. Хороших статей о том, как устроены эти структуры данных, предостаточно. Сегодня я хотел бы рассказать о редких и недооцененных структурах данных. И самое главное, как впустить их в свою рутинную жизнь разработчика.
https://habr.com/ru/articles/827162/
#data_structures #alhoritms #swift #deque #heap #orderedset #ordereddictionary #leetcode #trie #мобильная_разработка
История о том, как Graphviz и бор взломали шифр от Sony
Мою первую статью я желаю посвятить истории о том, как я решил заняться исследованием часто встречающихся в модулях PlayStation Portable непонятных байтовых строк. Никакой документации в Homebrew коммьюнити найти не удалось, так что я взялся за дело сам. Как это было
https://habr.com/ru/articles/826452/
#psp #реверсинжиниринг #бор #trie #graphviz #python #ppsspp #homebrew