Skip to the editor
JSGroundwork
JSGroundwork handwritten · web dev
←Back to Tries

Ready to read

JSJavaScript⑂Git◎Interview prepΣDSA in JSSDSystem Design
More topics15›
</>HTML{ }CSS⚛ReactNNext.jsNeNest.jsTSTypeScriptNoNode.js🐳DockerDBSQL & Databases✓Testing🔒Web Security☁Cloud & DevOps◈GraphQL◆Redis☸Kubernetes
☰‹›
Description
All topics›JavaScript›Tries

Design Add and Search Words

advancedlayer A5 · Tries5 tests

Design a dictionary that supports wildcard lookups.

  • addWord(word) — store a word of lowercase letters
  • search(word) — true if any stored word matches. The query may contain '.', which matches any single letter
  • The match must cover the whole word: a query of length 3 only matches stored words of length 3
  • So after adding 'bad': '.ad' and 'b..' match, 'b.' does not
  • Do not scan every stored word on each query — build a trie

Stuck?

All exercisesPlayground
1234567891011121314
loading the editor…

Nothing yet — hit Run and whatever you log shows up here.

Submit to see how you did.

⌘/Ctrl + Enter run⌘/Ctrl + S save⌘/Ctrl + / comment⌘/Ctrl + F find/replace⌘/Ctrl + D select next matchAlt + click multi-cursorTab indent · ⇧Tab outdentEsc leave fullscreen