JSFiddle - React, Tailwind, and code Playground

by Paco86

JavaScript

function buildTrie() {
  var root = {};
  words.forEach((word) => {
  	var node = root;
  	for(var i = 0; i < word.length; i++) {
    	var w = word[i];
			if (!node[w]) node[w] = {};
      node = node[w]
    }
    node.end = word;
  });
  
  return root;
}

var words = ['cat', 'cab', 'ca', 'bad', 'bat'];
console.log(buildTrie(words))