scispace - formally typeset
Journal ArticleDOI

Using tries to eliminate pattern collisions in perfect hashing

Reads0
Chats0
TLDR
In this paper, a perfect hashing technique that uses array-based tries and a simple sparse matrix packing algorithm is introduced that eliminates all pattern collisions and can be used to form ordered minimal perfect hashing functions on extremely large word lists.
Abstract
Many current perfect hashing algorithms suffer from the problem of pattern collisions. In this paper, a perfect hashing technique that uses array-based tries and a simple sparse matrix packing algorithm is introduced. This technique eliminates all pattern collisions, and, because of this, it can be used to form ordered minimal perfect hashing functions on extremely large word lists. This algorithm is superior to other known perfect hashing functions for large word lists in terms of function building efficiency, pattern collision avoidance, and retrieval function complexity. It has been successfully used to form an ordered minimal perfect hashing function for the entire 24481 element Unix word list without resorting to segmentation. The item lists addressed by the perfect hashing function formed can be ordered in any manner, including alphabetically, to easily allow other forms of access to the same list. >

read more

Citations
More filters
Journal ArticleDOI

Perfect hashing

Book

Advanced database indexing

TL;DR: This chapter discusses access methods for storing, sorting, and indexing data in the context of storage systems, as well as some of the approaches used in indexing for data collection and retrieval.
Book

GPERF: a perfect hash function generator

TL;DR: Gperf as mentioned in this paper is a C++ perfect hash function generator for keyword recognition that translates an n element user-specified keyword list keyfile into source code containing a k element lookup table and a pair of functions, phash and in_word_set.
Journal ArticleDOI

A compact static double-array keeping character codes

TL;DR: A compact structure for a static double-array is presented that keeps character codes instead of indices in order to compress elements of the double- array and consists of less elements than the old structure.

Designs and algorithms for packet and content inspection

TL;DR: The proposed static pattern matching approach introduces pre-decoding to share matching characters in CAM-like comparators and a new perfect hashing algorithm to predict a matching pattern, as a means to resolve or at least alleviate the processing requirements of matching incoming traffic against large datasets of known attacks.
References
More filters
Book

The Art of Computer Programming

TL;DR: The arrangement of this invention provides a strong vibration free hold-down mechanism while avoiding a large pressure drop to the flow of coolant fluid.
Journal ArticleDOI

Trie memory

TL;DR: In this paper several paradigms of trie memory are described and compared with other memory paradigm, their advantages and disadvantages are examined in detail, and applications are discussed.
Journal ArticleDOI

Organization and maintenance of large ordered indexes

TL;DR: In this paper, the index is maintained with an average of 9 (at least 4) transactions per second on an IBM 360/44 with a 2311 disc and the index pages are organized in a special datastructure, so-called B-trees.
Journal ArticleDOI

Storing a Sparse Table with 0(1) Worst Case Access Time

TL;DR: A data structure for representing a set of n items from a universe of m items, which uses space n+o(n) and accommodates membership queries in constant time and is easy to implement.
Journal ArticleDOI

Storing a sparse table

TL;DR: This work proposes a good worst-case method for storing a static table of n entries, each an integer between 0 and N - 1, and analysis shows why a simpler algorithm used for compressing LR parsing tables works so well.
Related Papers (5)