Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

✨ Add Radix Tree Implementation #46

Open
Kalkwst opened this issue Jan 14, 2023 · 0 comments
Open

✨ Add Radix Tree Implementation #46

Kalkwst opened this issue Jan 14, 2023 · 0 comments
Labels
enhancement The issue is a suggestion for a new feature or improvement to an existing feature

Comments

@Kalkwst
Copy link
Owner

Kalkwst commented Jan 14, 2023

A radix tree, also known as a Patricia trie, is a type of tree data structure that is used to efficiently store and retrieve data that is represented as strings. It organizes data in a hierarchical structure, where each node represents a single character in a string, and the edges between nodes represent the characters in the string. It is particularly useful for storing a large number of strings, as it allows for efficient search, insertion, and deletion operations, as well as finding the longest prefix match of a given string.

From a more technical perspective, a radix tree is a tree-like data structure used to store a set of strings. It's a trie where each node represents a character in a string, and the edges between nodes represent the characters in the string. The tree is organized in such a way that common prefixes of the strings are grouped together, which allows for efficient search, insertion, and deletion operations. The time complexity for these operations is O(k) where k is the length of the string, which is faster than other data structures like a hash table or binary search tree. It also allows for finding the longest prefix match of a given string in O(k) time complexity. The radix tree is particularly useful for storing a large number of strings, such as IP addresses, DNS names, or phone numbers, in a way that allows for efficient search, insertion, and deletion operations.

@Kalkwst Kalkwst added the enhancement The issue is a suggestion for a new feature or improvement to an existing feature label Jan 14, 2023
@Kalkwst Kalkwst mentioned this issue Jan 14, 2023
26 tasks
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement The issue is a suggestion for a new feature or improvement to an existing feature
Projects
None yet
Development

No branches or pull requests

1 participant