An implementation of static trie using double array.Currently, only string keys and int32 values are supported.
importTriefrom"js-double-array-trie"// constructionletkeys=["abra","ab","cab","cabaa","abda"];letvalues=newInt32Array([300,500,400,0,200]);lettrie=Trie.create(keys,values);// lookuptrie.get("abra");// -> 300trie.get("abracadabra");// -> undefinedtrie.get("a");// -> undefined// prefix searchtrie.prefixSearch("abracadabra");// -> [{ value: 500, match: "ab" }, { value: 300, match: "abra" }]trie.prefixSearch("abba");// -> [{ value: 500, match: "ab" }]trie.prefixSearch("a");// -> []// serialization with snappy compression (returns Uint8Array)letdata=trie.serialize(true);// deserialization with snappy decompressionlettrie2=Trie.deserialize(data,true);trie2.prefixSearch("abracadabra");// -> [{ value: 500, match: "ab" }, { value: 300, match: "abra" }]