An on-line numerical database system, that is based on the concept of a weighted search tree and which functions like a file directory, is introduced. The system, which is designed to aid in reducing time-consuming redundant calculations in numerically intensive computations, can be used to fetch, insert and delete items from a dynamically generated list in optimal [O(log n) where n is the number of items in the list] time. Items in the list are ordered according to a priority queue with the initial priority for each element set either automatically or by an user supplied algorithm. The priority queue is updated on-the-fly to reflect element hit frequency. Items can be added to a database so long as there is space to accommodate them, and when there is not, the lowest priority element(s) is removed to make room for an incoming element(s) with higher priority. The system acts passively and therefore can be applied to any number of databases, with the same or different structures, within a single application.
[1]
Seymour Lipschutz.
Schaum's Outline of Theory and Problems of Data Structures
,
1986
.
[2]
S. C. Park,et al.
Balanced binary tree code for scientific applications
,
1989
.
[3]
Alfred V. Aho,et al.
The Design and Analysis of Computer Algorithms
,
1974
.
[4]
Si-Qing Zheng,et al.
A Simple and Powerful Representation of Binary Search Trees
,
1989,
Great Lakes Computer Science Conference.
[5]
L. Kronsjö.
Algorithms: Their Complexity and Efficiency
,
1979
.
[6]
Ellis Horowitz,et al.
Fundamentals of Data Structures
,
1984
.
[7]
Abraham Silberschatz,et al.
Operating System Concepts
,
1983
.