Trie (a.k.a. prefix tree) is an ordered tree data structure that is used to store an associative array where the keys are usually strings. All the descendants of a node have a common prefix of the string associated with that node, and the root is associated with the empty string.
ExtraLinq is a set of extension methods for IEnumerable<T>. Additionally ExtraLinq contains extension methods for Array and List<T> which are faster and allocate less than LINQ extensions from System.Linq.