A Novel Approach of Implementing Radix Sort by Avoiding Zero Bits Based on Divide and Conquer Technique
International Journal of Computational Intelligence and Informatics
Sorting plays a major role in theoretical computations and makes data analysing easy. Even though existing algorithms show good performance in time and space consumption, new techniques are still being fabricated. An efficient non comparative, individual digit clustering, integer sorting algorithm, radix sort seems to be taking í µí± ¶(í µí²). However, in general, it takes í µí± ¶(í µí²í µí°¥í µí°¨í µí° (í µí²)) as the best performance comparison based algorithms do. In order to achieve a
... der to achieve a better performance algorithm than existing ones, we introduce an inspiring technique based on radix sort. This technique divides set of decimal integers in two groups with respect to bits in the same position in the binary representation. This steps is repeated within each subgroup and the process is continued until the list is sorted. Most significant non zero bit of maximum value is used as pivot bit for partition in each step and avoids to run through leading zero bits. This consumes í µí± ¶(í µí²í µí²) time where í µí² is significantly less thaní µí°¥í µí°¨í µí° í µí². Keywords-divide and conquer technique, time complexity, radixes. I. BACKGROUND Sorting is a technique that arranges the elements in ascending or descending order. It is important to data canonicalization and algorithm optimization. A set of elements can be ordered numerically or lexicographically. Most of these algorithms compare elements on the entire list in a certain way in order to sort. These comparing and exchanging processes are executed iteratively or recursively based on the approaches adopted. The fundamental comparison-based sort, such as bubble sort or selection sort takes í µí±(í µí± 2) time in average/worst case . However, í µí±(í µí±log (í µí±)) is an achievable worst time by some comparison-based algorithms (e.g. merge, heap). The same time order of í µí±(í µí±log(í µí±)) is taken by quicksort and heapsort in average case , . In best case, a non-comparative sorting algorithm radix sort can have an excellent performance withí µí±(í µí±)time, but it takes í µí±(í µí±log(í µí±)) time in average case . We can realize usage of this sort in several applicable areas  and new techniques were developed frequently based on it -, specially parallel versions which support high performance and GPU computing -. We are going to look at an overview of fundamental radix sort, and radix exchange sort, then explain our new approach followed by test cases and discussions.