Lock-free wild card search data structure and method

1. Technical Field A data structure adapted for storage in a computer memory for receiving executable instructions. The data structure is a modified binary tree in the form of a quaternary tree guaranteeing at least two of four way branching at each internal node. In addition to the binary nodes, th...

Ausführliche Beschreibung

Gespeichert in:
Bibliographische Detailangaben
1. Verfasser: Friedberg, Stuart A
Format: Patent
Sprache:eng
Online-Zugang:Volltext bestellen
Tags: Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
Beschreibung
Zusammenfassung:1. Technical Field A data structure adapted for storage in a computer memory for receiving executable instructions. The data structure is a modified binary tree in the form of a quaternary tree guaranteeing at least two of four way branching at each internal node. In addition to the binary nodes, the tree may comprise a wildcard node and/or an epsilon node. The wildcard nodes point at keys of arbitrary descendants, and epsilon nodes reference an end of a data string at a specific length. In addition to the data structure, a method of traversing the data structure is disclosed for searching and retrieving data stored thereon. A method of modifying the data stored on the data structure is also disclosed. The searching algorithms include flags for controlling the tightness of a search and filters for searching prefixes and suffixes of a string. In conjunction with traversing the tree, a method of modifying the data structure is disclosed. The modification process includes a insertion process for adding data to the data structure, and a deletion process for removing data from the data structure. Both the insertion and deletion processes maintain and guarantee the two of four way branching of the data structure. Accordingly, the novel data structure is designed to permit users to access the data structure at the same time as a modification is occurring.