Abstract
Hashing has been used for decades in many fields such as encryption, password verification, and pattern search. Hash systems consist mainly of three components: the hash function, the hash table, and the linked lists that are attached to the hash table. One of the major benefits of using a hash function is reduction in the runtime of the hash-based software systems. However, their linked lists are a major source of time consumption. In this paper, an innovative method is proposed to remove all the linked lists attached to the hash table and collect the necessary information in a one-dimensional array. The method can be used to create an index for the human genome. The human genome is the size of a million-page book with no index, and it is difficult to find the needed information. The proposed method transforms list search operations with linear time complexity into array searches with logarithmic time complexity. In a sample problem, finding inversions in genomic sequences, the proposed indexing system is compared with traditional hashing systems with linked lists. It is demonstrated that, in addition to time complexity reduction, the proposed method reduces the space required for the hash system to one half of what is used by linked list based methods.
Published Version (Free)
Talk to us
Join us for a 30 min session where you can share your feedback and ask us any queries you have