## A New Algorithm for Sorting Small Integers (2008)

### BibTeX

@MISC{Mansi08anew,

author = {Rami Mansi},

title = {A New Algorithm for Sorting Small Integers},

year = {2008}

}

### OpenURL

### Abstract

Abstract: This paper presents a new sorting algorithm called RAMI-Sort algorithm. The RAMI-Sort algorithm enhanced the time complexity of the best, average, and worst cases of many standard sorting algorithms, such as Quicksort, Cocktail sort, and Shell sort, when dealing with a large size of the input array especially when the integer values of the elements were small and distinct. The proposed algorithm and many standard sorting algorithms have been applied in a real-world case study simulation and compared. Keywords: RAMI-Sort, enhanced sorting, small integers sorting, distinct elements sorting.

### Citations

8550 |
Introduction to Algorithms
- Cormen, Leiserson, et al.
- 1990
(Show Context)
Citation Context ...rms of the efficiency of the algorithmic complexity [8]. Many algorithms are very well known for sorting the unordered lists. Most important of them are Bubble sort [2], Quicksort [9], Insertion sort =-=[5]-=-, and Shell sort [21]. Efficient sorting is important to optimize the use of other algorithms that require sorted lists to work correctly. It is also often in producing human-readable output [7, 8]. F... |

2446 |
The design and analysis of computer algorithms
- Aho, Hopcroft, et al.
- 1974
(Show Context)
Citation Context ...r reordering, of the input. Since the early beginning of computing, the sorting problem has attracted many researchers, perhaps due to the time complexity of solving it efficiently [11]. As stated in =-=[1, 5]-=-, sorting has been considered as a fundamental problem in the study of algorithms, that due to many reasons: • The need to sort information is inherent in many applications. • Algorithms often use sor... |

195 |
The Art of Computer Programming: Sorting and Searching
- Knuth
- 1997
(Show Context)
Citation Context ...ort algorithm. It is clear that RAMI-Sort is faster than Shell sort and its variants since all of them elapse more time than RAMI-Sort to sort an array of size n. Heap sort algorithm, as mentioned in =-=[10, 13]-=-, is a comparison-based sorting algorithm, and is a part of the selection sort family. Although somewhat slower in practice on most machines than a good implementation of quicksort, it has the advanta... |

87 |
Java: How to program
- Deitel, Deitel
- 2005
(Show Context)
Citation Context ... sort [5], and Shell sort [21]. Efficient sorting is important to optimize the use of other algorithms that require sorted lists to work correctly. It is also often in producing human-readable output =-=[7, 8]-=-. Formally, the output should satisfy two major conditions: the output is in non-decreasing order, and it is a permutation, or reordering, of the input. Since the early beginning of computing, the sor... |

74 |
Introduction to the design & Analysis of Algorithms. Pearson Education, 1st edition
- Levitin
- 2008
(Show Context)
Citation Context ... Algorithms To prove the efficiency of the proposed algorithm, we may compare it with some recent advanced sorting algorithms, such as Quicksort [9], Cocktail sort [8], Shell sort [21], and Heap sort =-=[13]-=- algorithms. Quicksort is a well-known sorting algorithm developed by C. Hoare [9] that, on average, makes O(nlgn) comparisons to sort n items. However, in the worst case, it makes O(n 2 ) comparisons... |

52 |
Quicksort
- Hoare
(Show Context)
Citation Context ... were observed in terms of the efficiency of the algorithmic complexity [8]. Many algorithms are very well known for sorting the unordered lists. Most important of them are Bubble sort [2], Quicksort =-=[9]-=-, Insertion sort [5], and Shell sort [21]. Efficient sorting is important to optimize the use of other algorithms that require sorted lists to work correctly. It is also often in producing human-reada... |

26 | Analysis of Shellsort and related algorithms, presented at the Fourth Annual European Symposium on Algorithms
- Sedgewick
- 1996
(Show Context)
Citation Context ... each pass through the list, until the set consists of the entire list. This sets the insertion sort up for an almost-best case run each iteration with a complexity that approaches O(n). As stated in =-=[18, 21]-=-, the original implementation of Shell sort performs O(n 2 ) comparisons and exchanges in the worst case. A minor change given in V. Pratt's book [17] which improved the bound to O(n log 2 n). This is... |

25 |
Data Structure & Problem Solving Using Java
- Weiss
- 2006
(Show Context)
Citation Context ...apsort uses two heap operations: insertion and root deletion. Each extraction places an element in the last empty location of the array. The remaining prefix of the array stores the unsorted elements =-=[23]-=-. When dealing with a large size n of input array that has small min and max values, RAMI-Sort works more efficiently than heap sort, since it takes O(n) time in this case. Table 1 shows the main diff... |

18 | Randomized sorting in O(n log log n) time and linear space using addition, shift, and bit-wise boolean operations
- Thorup
- 1997
(Show Context)
Citation Context ...s not get in the way. Because it only uses exchanges, the final list has the same elements as the original list. Notice that an element may be exchanged multiple times before reaching its final place =-=[22]-=-. Cocktail sort as stated in [8], also known as bidirectional Bubble sort and Cocktail Shaker sort, is a variation of bubble sort and selection sort that is both a stable sorting algorithm and a compa... |

17 |
Sorting on electronic computer systems
- Friend
- 1956
(Show Context)
Citation Context ...rs and many resources are invested to suggest more working sorting algorithms. For this purpose many existing sorting algorithms were observed in terms of the efficiency of the algorithmic complexity =-=[8]-=-. Many algorithms are very well known for sorting the unordered lists. Most important of them are Bubble sort [2], Quicksort [9], Insertion sort [5], and Shell sort [21]. Efficient sorting is importan... |

12 |
A fast, easy sort
- Lacey, Box
- 1991
(Show Context)
Citation Context ... The last step of Shell sort is a plain insertion sort, but by then, the array of data is guaranteed to be almost sorted. The Shell sort is a “diminishing increment sort”, better known as a comb sort =-=[4]-=- to the unwashed programming masses. The algorithm makes multiple passes through the list, and each time sorts a number of equally sized sets using the insertion sort [15]. The size of the set to be s... |

7 |
Programming and Utilizing Digital Computers
- Ledley
- 1963
(Show Context)
Citation Context ... the main solution for the original input (combine). The principle of the divide-and-conquer algorithm design is that it is easier to solve several small instances of a problem than one large problem =-=[6, 12]-=-. In this paper, a new sorting algorithm is presented, called RAMI-Sort (the author's first name). The study shows that the proposed algorithm is more efficient and faster as compared to many standard... |

7 |
Information sorting in the application of electronic digital computers to business operations
- Seward
- 1954
(Show Context)
Citation Context ...orts in both directions each pass through the list. This sorting algorithm is only marginally more difficult than bubble sort to implement, and solves the problem with socalled turtles in bubble sort =-=[16, 19]-=-. In the first stage of the Cocktail sort, it loops through the array from bottom to top, as in bubble sort. During the loop, adjacent items are compared. If at any point the value on the left is grea... |

5 |
C++: An Introduction to Data Structures
- Nyhoff
- 1999
(Show Context)
Citation Context ..., better known as a comb sort [4] to the unwashed programming masses. The algorithm makes multiple passes through the list, and each time sorts a number of equally sized sets using the insertion sort =-=[15]-=-. The size of the set to be sorted gets larger with each pass through the list, until the set consists of the entire list. This sets the insertion sort up for an almost-best case run each iteration wi... |

4 |
The Principles of Sorting,” The
- Bell
- 1958
(Show Context)
Citation Context ...e, makes O(nlgn) comparisons to sort n items. However, in the worst case, it makes O(n 2 ) comparisons. Quicksort is characterized as a “hard division and easy combination” algorithm. As mentioned in =-=[3, 13]-=-, there are three divide-and-conquer steps for sorting a typical sub-array A[p..r]: • Divide: the array A[p..r] is partitioned into two nonempty sub arrays, A[p..q] and A[q+1..r] such that each elemen... |

4 |
A High Speed Sorting Procedure
- Shell
- 1959
(Show Context)
Citation Context ...y of the algorithmic complexity [8]. Many algorithms are very well known for sorting the unordered lists. Most important of them are Bubble sort [2], Quicksort [9], Insertion sort [5], and Shell sort =-=[21]-=-. Efficient sorting is important to optimize the use of other algorithms that require sorted lists to work correctly. It is also often in producing human-readable output [7, 8]. Formally, the output s... |

2 |
Bubble Sort: An Archaeological Algorithmic Analysis
- Astrachanm
- 2003
(Show Context)
Citation Context ...ting algorithms were observed in terms of the efficiency of the algorithmic complexity [8]. Many algorithms are very well known for sorting the unordered lists. Most important of them are Bubble sort =-=[2]-=-, Quicksort [9], Insertion sort [5], and Shell sort [21]. Efficient sorting is important to optimize the use of other algorithms that require sorted lists to work correctly. It is also often in produc... |

2 |
Simple Expected Running Time Analysis for Randomized Divide and Conquer Algorithms
- Dean, “A
- 2006
(Show Context)
Citation Context ... the main solution for the original input (combine). The principle of the divide-and-conquer algorithm design is that it is easier to solve several small instances of a problem than one large problem =-=[6, 12]-=-. In this paper, a new sorting algorithm is presented, called RAMI-Sort (the author's first name). The study shows that the proposed algorithm is more efficient and faster as compared to many standard... |

2 |
A Fortran Primer
- Organick
- 1963
(Show Context)
Citation Context ...orts in both directions each pass through the list. This sorting algorithm is only marginally more difficult than bubble sort to implement, and solves the problem with socalled turtles in bubble sort =-=[16, 19]-=-. In the first stage of the Cocktail sort, it loops through the array from bottom to top, as in bubble sort. During the loop, adjacent items are compared. If at any point the value on the left is grea... |

2 | Enhanced Shell Sorting Algorithm
- Shahzad, Afzal
- 2007
(Show Context)
Citation Context ...worst case. A minor change given in V. Pratt's book [17] which improved the bound to O(n log 2 n). This is worse than the optimal comparison sorts, which are O(n log n). Enhanced Shell sort algorithm =-=[20]-=- is an improvement in the Shell sort algorithm to calculate the value of ‘h’. It has been observed that by applying the enhanced algorithm, number of swaps can be reduced up to 60 percent as compared ... |

1 |
Analysis of Quicksort
- Moller
- 2001
(Show Context)
Citation Context ...recursive calls to Quick sort . • Combine: since the sub arrays are sorted in place, no work is needed to combine them, and the entire array A[p..r] is now sorted. The steps of Quicksort as stated in =-=[9, 14]-=- are: • Pick an element, called a pivot, from the list. • Reorder the list so that all elements which are less than the pivot come before the pivot and so that all elements greater than the pivot come... |