Defining a Modified Cycle Sort Algorithm and Parallel Critique with Other Sorting Algorithms (GRDJE/ Volume 5 / Issue 5 / 001)

Defining a Modified Cycle Sort Algorithm and Parallel Critique with Other Sorting Algorithms (GRDJE/ Volume 5 / Issue 5 / 001)

GRD Journals- Global Research and Development Journal for Engineering | Volume 5 | Issue 5 | April 2020 ISSN- 2455-5703 Defining a Modified Cycle Sort Algorithm and Parallel Critique with other Sorting Algorithms Nakib Aman Turzo Lecturer Department of Computer Science and Engineering Varendra University Pritom Sarker Biplob Kumar Student Student Department of Computer Science and Engineering Department of Computer Science and Engineering Varendra University Varendra University Jyotirmoy Ghose Amit Chakraborty Student Student Department of Computer Science and Engineering Department of Computer Science and Engineering National Institute of Technology, Rourkela Varendra University Abstract Professionals of computer sciences have to confront with different complexities and problems. The pivot point of the problem which requires the focus is sorting algorithm. Sorting is the rearrangement of items or integers in an ordered way. In this research platform a modified cycle sort algorithm was devised and then comparative study of different sorting algorithms like Selection sort, Merge sort, Cycle sort and Bubble sort is being done. We also used other variety of other sorting algorithms with it. An entirely modified concept which is being sorted out. A program instigated in python has been used for gauging of CPU time taken by each algorithm. Results were obtained after cataloguing and graphically represented. For core precision program was casted a number of times and it’s concluded that modified cycle sort was the best option among all linear sorting algorithms where we have duplicate data and for large inputs efficiency has also ascended. Keywords- Sorting Algorithms, Cycle Sort, Merge Sort, Bubble Sort, Selection Sort, Time Complexity I. INTRODUCTION An algorithm is an explicit, precise, unambiguous, mechanically executable sequence of elementary instructions, usually intended to accomplish a specific purpose. Sorting is the rejigging of deets in an ordered sequence. Computer technology is incessantly maturing, and new frameworks are being instigated to the market. The plot of different mechanisms with multiple cores involves programming for many analytical processors working separately. The application is aligned on dedicated assortment of concerns for effective information managing. These facets make it viable to manage even more details in various databases. Algorithms that are most useful are different sorting methods. The data constituents which needs to be sorted are normally stored in array data structure to amass it in accordance to data elements. Most software applications sort data in ascending or descending order that is why sorting algorithms have a paramount importance in these tasks. There are many fundamental and evolved sorting methods which are used for specific purpose. It is of key importance because it enhances the usefulness of data. It has risen in parallel with human mind burgeoning. Flourishment of information leads to increase in sort algorithms establishment. Their progress plummeted the complexity and allured a great deal of research. From finding a word from dictionary to finding a number or address from a directory is not so vapid now. Several sorting algorithms are present today like merge sort, bubble sort, insertion sort, quick sort, selection sort and each one of them has separate mechanism to organize various elements so that performance and efficiency get rocketed. While doing comparison there are many factors which must be taken into account like time complexity i.e. the proportion of time taken by the sorting algorithm to trot. This factor is quiet vary in every sorting algorithm because of the bulk of data and may be inefficient or too slow. The time complexity can be depicted as O (n) notation. Here O represents complexity and n represents the number of elementary operations done. Second factor which is focused is stability i.e. algorithms keep the constituents with same values in the same sequence in modified array. Some sorting algorithms are stable by nature like insertion sort, merge sort, bubble sort while others are not stable and need to be modified to stable. The third factor is memory space which depicts that most sorting algorithms which use recursive techniques cover more memory. In this article, we have used our analytical approach to compare different sorting algorithms with newly devised counting (cycle) sort algorithm by modifying a previous one and tried to elaborate it in a simple way. Also presented some previous comparative studies of different people who have done it exceptionally. It’s a stark reality that critical research is the base of knowledge. All rights reserved by www.grdjournals.com 1 Defining a Modified Cycle Sort Algorithm and Parallel Critique with other Sorting Algorithms (GRDJE/ Volume 5 / Issue 5 / 001) II. LITERATURE REVIEW There are various groundwork or analysis available in determination of complexity of sorting algorithms. In comparative study of some parallel sort algorithms such as map sort, merge sort, parallel quick sort, alternative quick sort and the intent was to introduce merge sort algorithm and its capability to sort n-sized array of elements. Maintaining the Integrity of the Specifications. The stratagem adopted was divide and conquer method. Pragmatic and postulator analysis of merge sort algorithm was presented in addition to its pseudo codes. Merge sort was compared with bubble, insertion and selection and manifests that merge sort is faster than insertion sort with a ratio of 24 to 241 times and using n-values of 10,000 and 60,000 respectively. Results also showed that difference between merge and insertion sort is significant with 90% confidence [1, 6]. A practical performance was done by comparing odd-even transposition sort, parallel rank sort, and parallel merge sort [7]. There are many studies which addressed problems associated to dedicated and parallel machines; but a little research has been carried out on performance evaluation of parallel sorting algorithms on clustered stations. Hence, the aim of the study is to compare some parallel sorting algorithms with overall execution time as performance parameter. Algorithms taken into consideration include odd-even transposition sort, parallel rank sort, and parallel merge sort. These algorithms were evaluated in the same way as done by [6]. In theory, the odd-even transposition has a complexity of O (bn2); such that b = 1/2p2. This implicates that the time will be decreased by ‘b’. Similarly, in theory parallel rank sort has a complexity of O (cn2); c = 1/p. The theoretical complexity of parallel merge sort is O (n/p log n/p). ‘P’ is number of processes. Empirical results have shown that fastest one is parallel merge technique. This is followed by the odd-even transposition algorithm, while the slowest is the parallel rank sorting algorithm [2, 8]. In a study of Bubble, Insertion, Quick, Merge and Heap sorting algorithms on 100000, 300000, 500000, 700000, 1000000, 1500000 input values. After analyzing the data empirically algorithms were ranked in the order prescribed below with respect to speed. 1. Merge 2. Quick 3. Heap 4. Insertion 5. Bubble Merge, quickly and heap sort algorithms are faster than the remaining two because of large input size [9]. In another study bubble, insertion, selection, merge and quick sort algorithms on the input values 10, 100, 1000 and 10000. Average running time was noted on these inputs and presented graphically and concluded that the most effective and efficient algorithm was quick sort [10]. Algorithms complexity was determined by variety of criteria’s. In a study it was defined that time needed by an algorithm expressed as a function of the size of a problem is called time complexity and limiting behavior of complexity as size increases is called asymptomatic time complexity. It’s the complexity of an algorithm which determines the size of problem that can be achieved with an increase in computer speed [11]. An empirical comparison of runtime of five sorting algorithms was done to determine which one is fastest to sort lists of different lengths and to determine which algorithms to be used. Other factors were also taken into account in order to guarantee a high-quality product [12].In a research, sorting methods were divided into two categories. If data are sorted at a time in main memory it will be internal sorting but if data are sorted in auxiliary memory, it's called external memory [5, 13].In another study analysis of no-comparison based sorting algorithms was done which make assumptions about the input. All elements are required to fall within a range of constant length in order to ensure linear time complexity. On the other hand comparison based sorting algorithms make no assumption about input and are able to address any case [6, 14]. In an investigative study, different types of sorting algorithms for the allocation of CPU, as it is mastermind of computer. Scheduling of CPU is the basis of effective utilization of various resources which are attached to CPU. In this process allocation of CPU to a particular time was done so that we can take maximum usage from it. It involves the careful examination of pending processes to determine the most efficient way to service the request [15]. Processing time of four sorting algorithms was taken with index sort and it was noted that which algorithm takes less time to sort elements. If any algorithm takes less processing time which means that it sorts elements faster than others. The processing time depends on processing speed of a processor as well as internal memory used by system. It was concluded that index sort algorithm is working well for all length of input values. It took less CPU time than other sorting algorithms for small inputs. More effective sorting algorithm can be proposed with running time [3, 16]. Analysis of robustness of sorting and tournament algorithms against faulty comparisons. Sorting algorithms were affected differently by faulty comparisons depending on how comparison errors can affect the overall result.

View Full Text

Details

  • File Type
    pdf
  • Upload Time
    -
  • Content Languages
    English
  • Upload User
    Anonymous/Not logged-in
  • File Pages
    8 Page
  • File Size
    -

Download

Channel Download Status
Express Download Enable

Copyright

We respect the copyrights and intellectual property rights of all users. All uploaded documents are either original works of the uploader or authorized works of the rightful owners.

  • Not to be reproduced or distributed without explicit permission.
  • Not used for commercial purposes outside of approved use cases.
  • Not used to infringe on the rights of the original creators.
  • If you believe any content infringes your copyright, please contact us immediately.

Support

For help with questions, suggestions, or problems, please contact us