Efficient storage and search of word lists and other text
First Claim
Patent Images
1. A computer-implemented method for searching a collection of machine readable digital data, the method comprising:
- a computer receiving a given search word;
the computer evaluating the search word against some or all words in a table, said table having rows and columns, each word residing in a different row and each letter of the word occupying a different column in that row,where the words are stored so as to preserve order of the letters within the words, andwhere each contiguous run of same letters in a column forms an interval, and such that the lengths of the intervals are maximized to facilitate data searching, the evaluating operation comprising;
for each target word in the table to which the search word is being evaluated, comparing, one letter at a time, letters of the search word to corresponding letters of the target word as represented by the columns in the table;
upon completing the evaluating operation without finding a successful match, providing an output representing a failed match.
2 Assignments
0 Petitions
Accused Products
Abstract
A computer readable storage medium tangibly embodying machine-readable digital data arranged to facilitate expedited searching. The data includes a plurality of words residing in a table having rows and columns, each word residing in a different row and each letter of the word occupying a different column in that row. Each continuous run of same letters in a column forms an interval. The words are positioned relative to each other to maximize lengths of the intervals, and/or optimize efficiency of compression of the columns by run length encoding.
-
Citations
8 Claims
-
1. A computer-implemented method for searching a collection of machine readable digital data, the method comprising:
-
a computer receiving a given search word; the computer evaluating the search word against some or all words in a table, said table having rows and columns, each word residing in a different row and each letter of the word occupying a different column in that row, where the words are stored so as to preserve order of the letters within the words, and where each contiguous run of same letters in a column forms an interval, and such that the lengths of the intervals are maximized to facilitate data searching, the evaluating operation comprising; for each target word in the table to which the search word is being evaluated, comparing, one letter at a time, letters of the search word to corresponding letters of the target word as represented by the columns in the table; upon completing the evaluating operation without finding a successful match, providing an output representing a failed match. - View Dependent Claims (2, 3, 4, 5)
-
-
6. An article of manufacture, comprising:
a computer readable storage medium tangibly embodying one or more of the following; (1) a first program of machine-readable instructions executable by a digital processing apparatus to perform operations of searching a collection of machine-readable digital data, (2) a second program of machine-readable instructions executable by a digital processing apparatus to perform installation of the first program; where said operations comprise; receiving a given search word; evaluating the search word against some or all words in a table, said table having rows and columns, each word residing in a different row and each letter of the word occupying a different column in that row, where the words are stored so as to preserve order of the letters within the words, and where each contiguous run of same letters in a column forms an interval, and such that lengths of the intervals are maximized to facilitate data searching, the evaluating operation comprising; for each target word in the table to which the search word is being evaluated, comparing, one letter at a time, letters of the search word to corresponding letters of the target word as represented by the columns in the table; upon completing the evaluating operation without finding a successful match, providing an output representing a failed match.
-
7. An apparatus, comprising:
-
circuitry of multiple interconnected electrically conductive elements configured to perform operations of searching a collection of machine-readable digital data; where said operations comprise; receiving a given search word; evaluating the search word against some or all words in a table, said table having rows and columns, each word residing in a different row and each letter of the word occupying a different column in that row, where the words are stored so as to preserve order of the letters within the words, and where each contiguous run of same letters in a column forms an interval, and such that lengths of the intervals are maximized to facilitate data searching, the evaluating operation comprising; for each target word in the table to which the search word is being evaluated, comparing, one letter at a time, letters of the search word to corresponding letters of the target word as represented by the columns in the table; upon completing the evaluating operation without finding a successful match, providing an output representing a failed match.
-
-
8. A data processing computer apparatus, comprising:
-
at least one storage element configured to store a collection of machine-readable digital data including a plurality of words residing in a table having rows and columns, each word residing in a different row and each letter of the word occupying a different column in that row, where the words are stored so as to preserve order of the letters within the words, and where each contiguous run of same letters in a column forms an interval, and such that lengths of the intervals are maximized to facilitate data searching; at least one processor configured to execute programmed instructions from a manager, the manager programmed to search the table by performing operations comprising; receiving a given search word; evaluating the search word against some or all words in the table, comprising operations of; for each target word in the table to which the search word is being evaluated, comparing, one letter at a time, letters of the search word to corresponding letters of the target word as represented by the columns in the table; upon completing the evaluating operation without finding a successful match, providing an output representing a failed match.
-
Specification