Journal of Information Science

 

Advanced Search

Journal Navigation

Journal Home

Subscriptions

Archive

Contact Us

Table of Contents

Register here to gain access to SAGE's 500+ Journals Online

Click here to sign up for SAGE Journal Email Alerts today!

Sign In to gain access to subscriptions and/or personal tools.
This Article
Right arrow Full Text (PDF)
Right arrow References
Right arrow Alert me when this article is cited
Right arrow Alert me if a correction is posted
Services
Right arrow Email this article to a friend
Right arrow Similar articles in this journal
Right arrow Similar articles in ISI Web of Science
Right arrow Alert me to new issues of the journal
Right arrow Add to Saved Citations
Right arrow Download to citation manager
Right arrowRequest Permissions
Right arrow Request Reprints
Right arrow Add to My Marked Citations
Citing Articles
Right arrow Citing Articles via Google Scholar
Google Scholar
Right arrow Articles by Al-Darwish, N.
Right arrow Search for Related Content
Social Bookmarking
 Add to CiteULike   Add to Connotea   Add to Del.icio.us   Add to Digg   Add to Reddit   Add to Technorati  
What's this?
Journal of Information Science, Vol. 31, No. 6, 467-481 (2005)
DOI: 10.1177/0165551505057007

Formulation and analysis of in-place MSD radix sort algorithms

Nasir Al-Darwish

ICS Department, King Fahd University of Petroleum and Minerals, Dhahran, Saudi Arabia

We present a unified treatment of a number of related inplace MSD radix sort algorithms with varying radices, collectively referred to here as 'Matesort' algorithms. These algorithms use the idea of in-place partitioning which is a considerable improvement over the traditional linked list implementation of radix sort that uses O(n) space. The binary Matesort algorithm is a recast of the classical radixexchange sort, emphasizing the role of in-place partitioning and efficient implementation of bit processing operations. This algorithm is O(k) space and has O(kn) worst-case order of running time, where k is the number of bits needed to encode an element value and n is the number of elements to be sorted. The binary Matesort algorithm is evolved into a number of other algorithms including 'continuous Matesort' for handling floating point numbers, and a number of 'general radix Matesort' algorithms. We present formulation and analysis for three different approaches (sequential, divide-and-conquer and permutation-loop) for partitioning by the general radix Matesort algorithm. The divide-andconquer approach leads to an elegantly coded algorithm with better performance than the permutation-loop-based American Flag Sort algorithm.

Key Words: sorting algorithms • radix sort • MSD radix sort • Matesort • general radix Matesort • Quicksort


Add to CiteULike CiteULike   Add to Connotea Connotea   Add to Del.icio.us Del.icio.us   Add to Digg Digg   Add to Reddit Reddit   Add to Technorati Technorati    What's this?