A new algorithm for multiple key interpolation search in uniform list of numbers

  • Authors:
  • Ahmed Tarek

  • Affiliations:
  • California University of Pennsylvania, Department of Math and Computer Science, California

  • Venue:
  • CIS'09 Proceedings of the international conference on Computational and information science 2009
  • Year:
  • 2009

Quantified Score

Hi-index 0.00

Visualization

Abstract

In this paper, a new algorithm for multiple key interpolation search is proposed. The idea pertaining to the multiple key Interpolation search in a given list of elements is based on the concept that the algorithm searches for each key from a sorted list of m different keys starting with the first key by predicting the next possible position of the key currently under consideration in a relatively larger list, which is based on a linear interpolation of the current key, and the values at the end of the current search interval in that larger list. Once a key is identified at a particular index position, the next key search interval starts at the index position following it, and the elementary interval considered is the next index through the last of the original list. However, in performing the interpolation search with a particular key, the index values at the end of the elementary interval considered are subsequently adjusted in narrowing down the search efforts depending upon the projected value of the current key index position, which is computed using a linear interpolation. Basically, it is narrowing down the interval of the straight line in linear interpolation applied to a key search at each iteration, such that eventually the straight line segment converges to a single point index value, which is the index of the search key currently under consideration. The convergence of the straight line segments depends on the uniformity in the distribution of elements within the list, where the multiple key interpolation search technique is being applied. This concept is analogous to searching for multiple words in lexicographical sequence inside a dictionary, where one does not just blindly select the middle page of each search area, but rather decides where it is most likely to be judging by the current page range limits. As linear interpolation is being considered with the multiple key interpolation search, therefore, the search is largely dependent on the slopes of the straight lines during the entire search process. The slopes of the straight lines vary from range-to-range during the search process for non-uniformly distributed list elements where the algorithm is being applied.