Presentation is loading. Please wait.

Presentation is loading. Please wait.

Lecture 12 : Trie Data Structure Bong-Soo Sohn Assistant Professor School of Computer Science and Engineering Chung-Ang University.

Similar presentations


Presentation on theme: "Lecture 12 : Trie Data Structure Bong-Soo Sohn Assistant Professor School of Computer Science and Engineering Chung-Ang University."— Presentation transcript:

1 Lecture 12 : Trie Data Structure Bong-Soo Sohn Assistant Professor School of Computer Science and Engineering Chung-Ang University

2 Problem Store this collection of words in a memory efficient way : {abacus, abode, dreaded, dust, dusty, planar, east}

3 Arrays aabcus aobde deradde dsut dsuty = 6 slots = 5 slots = 7 slots = 4 slots = 5 slots

4 Idea Take advantage of the common letters in the words Reduce redundancy Use same letter for more than one word

5 Trie Store characters (digits) in each node, not keys. Path from root to a node is associated with a key Use characters of the key to guide the search process All the descendants of a node have a common prefix of the string associated with that node retrievalFrom retrieval, but pronounced “try”

6 Example u d en l h st o g l i e m go shed shell sun time she Make sure the word “she” is not found… …unless it has been explicitly inserted!

7 example A trie for keys "t", "to", "te", "tea", "ten", "i", "in", and "inn".

8 Advantages Looking up keys is faster. O(m) time. A BST takes O(log n) time m : length of key, n : # of elements In the worst case, log(n) will approach m Tries can require less space when they contain a large number of short strings Longest prefix matching is possible finding the key sharing the longest possible prefix of characters all unique Fast search/insert/delete

9 Drawbacks Tries can be slower in some cases. Especially when the tree is accessed from disk It is not easy to represent all keys as strings Floating point numbers (1.0, +1.0, 1 …) Inefficient when a key is too long

10 Applications Can replace a hash table Only take O(m), m : length of key No collision No need to provide hash function Can provide an alphabetical ordering of keys Dictionary IP routing Routing : process of selecting paths in a network along which to send network traffic when given a destination address, find next place(place) to go. Internet router table is a collection of rules of the form (P, NH), P : prefix, NH : next hop


Download ppt "Lecture 12 : Trie Data Structure Bong-Soo Sohn Assistant Professor School of Computer Science and Engineering Chung-Ang University."

Similar presentations


Ads by Google