Trie.deleteWord fails for words containing characters outside the BMP (e.g. emoji)
Avaliação
- Dificuldade
- 1/5
- Tempo estimado
- Menos de uma hora
- Facilidade para iniciantes
- 35/100
- Tipo de issue
- Bug
- Clareza
- Claramente especificada
- Status de atividade
- Estagnada
- Stack de tecnologia
- javascript
Direção de pesquisa
Read the Trie implementation and compare addWord with deleteWord at the referenced lines 33, 38, and 50. Reproduce the emoji case from the issue, then verify that deleting it makes doesWordExist('😀') return false. An open linked pull request (#2239) is already addressing this issue.
Escrita pelo modelo de indexação a partir do texto da issue.
Descrição
addWord iterates with Array.from(word) (code points), but deleteWord (lines 33, 38, 50) uses word[i] and word.length (UTF-16 code units). It looks up a lone surrogate, finds no child, and returns without deleting.
trie.addWord('😀');
trie.deleteWord('😀');
trie.doesWordExist('😀'); // true expected false
Fix: use Array.from(word) in deleteWord too.
Found during an independent property-based audit of this repo (full report and reproducible harness: https://github.com/devladpopov/algorithm-autopsy/tree/main/autopsy-02).
- Linguagem predominante
- JavaScript
- Estrelas
- 197k
- Forks
- 31k
- Métricas de merge de PRs
- Nenhum PR com merge em 30d
Preparar o ambiente
- Sem Dockerfile nem arquivo Docker Compose
- Sem modelo de pull request
- Ler o guia de contribuição
Primeiros passos
- Leia a issue inteira e depois o guia de contribuição do projeto.
- Comente na issue dizendo que vai assumir — evita que duas pessoas façam o mesmo trabalho.
- Faça um fork do repositório e trabalhe em uma branch.
- Abra um pull request que referencie o número da issue.
Mais de trekhleb/javascript-algorithms
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 78/100
trekhleb/javascript-algorithms#2231 ·
-
[Docs]: 9 hotlinked images in algorithm READMEs return 404 (GeeksforGeeks + ivanyu.me uploads)Aberta
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 76/100
trekhleb/javascript-algorithms#2225 ·
-
BinarySearchTreeNode removingTalvez já em andamento @bbonch assumiu há 262 dias. Aberta
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 72/100
trekhleb/javascript-algorithms#2102 · 1 comentário ·
-
math: uniquePaths and leastCommonMultiple return non-integers below 2^53; iterative Euclid is subtraction-based and can hangTalvez já em andamento @Shubham-Padkonde assumiu há 5 dias. Aberta
Dificuldade 3/5 1-2 dias Facilidade para iniciantes 35/100
trekhleb/javascript-algorithms#2238 ·
-
bellmanFord: runs in O(V²·E) rather than the O(V·E) / O(E) stated in READMETalvez já em andamento @Shubham-Padkonde assumiu há 5 dias. Aberta
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 35/100
trekhleb/javascript-algorithms#2236 ·
Todas as issues de trekhleb/javascript-algorithms
Issues semelhantes
-
security
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 86/100
remotestorage/remotestorage.js#1405 ·
-
Instagram explore page issueAbertaenhancement
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 68/100
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 78/100
nativewind/nativewind#1879 ·
-
Improve menu selectionAberta
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 67/100
BCStudentSoftwareDevTeam/cas#448 ·
-
enhancement good first issue hacktoberfest help wanted
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 84/100
BinaryBaconLabs/todo-app#14 ·