Open.Collections.Trie
1.3.1
dotnet add package Open.Collections.Trie --version 1.3.1
NuGet\Install-Package Open.Collections.Trie -Version 1.3.1
<PackageReference Include="Open.Collections.Trie" Version="1.3.1" />
paket add Open.Collections.Trie --version 1.3.1
#r "nuget: Open.Collections.Trie, 1.3.1"
// Install Open.Collections.Trie as a Cake Addin #addin nuget:?package=Open.Collections.Trie&version=1.3.1 // Install Open.Collections.Trie as a Cake Tool #tool nuget:?package=Open.Collections.Trie&version=1.3.1
Open.Collections.Trie
A trie (pronounced "try") is a data structure that allows efficient lookup of words in a dictionary or set. It is particularly useful for applications where a large number of strings need to be stored and searched efficiently, such as spell checkers or auto-complete systems. Tries can also be used to implement a string pool, which can help reduce memory usage in programs that frequently use the same strings.
The name "Trie" comes from the word retrieval, which refers to the process of finding a key or value in the structure. Tries are also known as digital trees, radix trees, or prefix trees.
Implementation
Trie<TKey, TValue
and ConcurrentTrie<TKey, TValue>
are simple implementations. These implementations do not support deletion or modification.
Structure
A Trie is a rooted tree, where each node represents a single character or a group of characters in a string. The root of the tree represents the empty string, and each path from the root to a leaf represents a complete string in the set.
Here is an example of a Trie that stores the following strings: "a", "apple", "apply", "bear", and "be".
┌───a───p───p───l───e
│ └───y
root┤
│ ┌───b───e───a───r
└───┤
└───e
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net5.0 was computed. net5.0-windows was computed. net6.0 was computed. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 was computed. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. |
.NET Core | netcoreapp2.0 was computed. netcoreapp2.1 was computed. netcoreapp2.2 was computed. netcoreapp3.0 was computed. netcoreapp3.1 was computed. |
.NET Standard | netstandard2.0 is compatible. netstandard2.1 is compatible. |
.NET Framework | net461 was computed. net462 was computed. net463 was computed. net47 was computed. net471 was computed. net472 was computed. net48 was computed. net481 was computed. |
MonoAndroid | monoandroid was computed. |
MonoMac | monomac was computed. |
MonoTouch | monotouch was computed. |
Tizen | tizen40 was computed. tizen60 was computed. |
Xamarin.iOS | xamarinios was computed. |
Xamarin.Mac | xamarinmac was computed. |
Xamarin.TVOS | xamarintvos was computed. |
Xamarin.WatchOS | xamarinwatchos was computed. |
-
.NETStandard 2.0
- System.Memory (>= 4.5.1)
-
.NETStandard 2.1
- No dependencies.
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.