ArticlePDF Available

Abstract and Figures

In this paper, we present the work regarding the selection sorting technique for double ended selection sort. This sorting algorithm is both theoretical and programmatically analysis show that the introduce advance selection sort algorithm which enhances the performance of selection sort. It is much faster than the selection sort because of its selection of minimum and maximum elements simultaneously. Advance selection sort algorithm possibility of enhancing execution speed up to 30%. Code for this algorithm is written in C programming Language. So easy to understand the concept of this sorting algorithm by everyone because C is the popular language. Results and discussion show a higher level of performance for the sorting algorithm. It can theoretically prove that the algorithm can reduce steps with the selection short and will improve N2 sorts toward NlogN sort.
Content may be subject to copyright.
85
copyright  samriddhi, 2010-2017 S-JPSET : Vol. 9, Issue 2, ISSN : 2229-7111 (Print) & ISSN : 2454-5767 (Online)
Improved Double Selection Sort using Algorithm
Nirupma Pathak*1 & Shubham Tiwari2
1.* Assistant Professor, Computer Science and Engineering, S.R. Institute of Management & Technology, Lucknow, (U.P.), India
e-mail : nirupmapathak@gmail.com
2. B.Tech Student, Computer Science and Engineering, S.R. Institute of Management & Technology, Lucknow, (U.P.), India.
e-mail : shubham.tiwari540@outlook.com
Abstract
In this paper, we present the work regarding the selection sorting technique
for double ended selection sort. This sorting algorithm is both theoretical and
programmatically analysis show that the introduce advance selection sort
algorithm which enhances the performance of selection sort. It is much faster
than the selection sort because of its selection of minimum and maximum
elements simultaneously. Advance selection sort algorithm possibility of
enhancing execution speed up to 30%. Code for this algorithm is written in C
programming Language. So easy to understand the concept of this sorting
algorithm by everyone because C is the popular language. Results and
discussion show a higher level of performance for the sorting algorithm. It
can theoretically prove that the algorithm can reduce steps with the selection
short and will improve N2 sorts toward NlogN sort.
1. INTRODUCTION
The phenomenon of selection sorting has been
known for a long time and has been used for the
database management system. Selection shorting
is the most important method used to arrange data
according to user requirement. In object-oriented
software, represent the sorting by programming
[1]. The practical work in sorting has so far,
generally focused on ascending or descending
order sequence. The important issue of sorting data
has successfully addressed in this paper. The
automated tool, such as Turbo C, has raised
awareness of the importance of shoring of data.
Many sorting algorithms are available in the
literature. Sorting is a data structure operation,
which is used for making searching and arranging
of data item or record. The here arrangement of
sorting involves either into ascending or
descending order. Everything in this world has
some advantage and disadvantage, some sorting
Publication Info
Article history :
Received : 11th Nov. 2017
Accepted : 05th Dec. 2017
DOI : 10.18090/samriddhi.v9i02.10866
Keywords :
Selection sorting technique, Sorting Algorithm,
NlogN sort.
*Corresponding author :
Nirupma Pathak
e-mail : nirupmapathak@gmail.com
algorithms are problem specific means they work
well on some specific problem, not all the problem
[2]. It saves time and helps searching data quickly.
Sorting algorithm performance varies on which
type of data being sorted, not easier to say that
which one algorithm is better than another is. Here,
the performance of the different algorithm is
according to the data being sorted [3]. Some
common sorting algorithms are the exchange or
bubble sort, the selection sort, the insertion sort
and the quicksort [4]. The Selection sort is a good
one that uses for finding the smallest element in
the array and put in the proper place. Swap it with
the value in the first position [5]. Repeat until the
array is sorted (starting at the second position and
advancing each time). It is very intuitive and
simple to program, offer quite good performance
for particular strength being the small number of
exchanges needed [6]. The selection sort always
goes through a set number of comparisons, for a
given no of data items. However, sometimes
86 S-JPSET : Vol. 9, Issue 2, ISSN : 2229-7111 (Print) & ISSN : 2454-5767 (Online) copyright  samriddhi, 2010-2017
Improved Double Selection Sort using Algorithm
question raise in front of us, is there any way
through this sorting can be more effective and how
to convert that algorithm into code [7, 8]. Then
demonstrate a modification of this algorithm, and
finally to assign the coding modification as a
programming. This work introduces one new
simple modification of sorting algorithm. The
proposed algorithm of sorting algorithm is very
simple and easy to implement in Turbo C tool, a
well known and easy to operate software for the
structural programmed implement. The theoretical
and practical are successfully utilized for the short
algorithm to evaluate the caused for a particular
task and close agreement is revealed.
The organization of the paper is as follows:
Section 1 covers the introduction to shoring algorithm.
The proposed advance selection sort algorithm is
presented in Section 2. The proposed pseudo code
of selection short is presented in Section 3. Finally,
the paper is concluded with the summarization of
all the contents in Section 4.
2. OUR PROPOSED ADVANCE SELECTION
SORT ALGORITHM
In this section, one new advance selection sort
algorithm has been introduced followed by the
generalized pseudo code of proposed algorithm.
Advance selection sort algorithm is an internal
sorting algorithm. This sorting algorithm is an in-
place comparison-based algorithm in which the list
is divided into three parts, the sorted part at the left
and right end and the unsorted part between left and
right end. It selects the minimum and maximum
element requires scanning all n elements (this takes
n-1 comparison) and then swapping it into the first
and last position respectively. Finding the next
minimum and maximum element requires scanning
the remaining (n-2) elements and so on. Practical
analysis of short algorithm has been carried out Turbo
C which works on the structural programming
language. The results from the presented idea are in
good agreement with the targeted results. Thus the
developed advance selection sort algorithm is
validated.
At this point, we have developed an advance short
algorithm for the Database management system
(DBMS) [10, 11, 12]. Combining 12 steps the short
algorithm has been implemented. Algorithm 1
demonstrate the design procedure of the proposed
idea of the sort algorithm. Line 1 of the algorithm
assign array length. Line 6 checking the minimum
array location. Line 8 of the algorithm check the
maximum array location. Finally, Line 10 and 11,
there is exchange position of array location.
Algorithm 1. Algorithm for the proposed idea of
advance selection short.
1.
n length[Array]
2. for i 0 to n-1
3. max i
4. min i
5. for j i+1 to n
6. if ( Array[j] < min )
7. then min j
8. if ( Array[j] > max )
9. then max j
10. Exchange ( Array[i], Array[min] )
11. Exchange (Array[n-1], Array[max] )
12. n n-1
Fig.1: The methods of shorting
Fig.2: Shorting based on array
87
copyright  samriddhi, 2010-2017 S-JPSET : Vol. 9, Issue 2, ISSN : 2229-7111 (Print) & ISSN : 2454-5767 (Online)
Nirupma Pathak & Shubham Tiwari
3. PROPOSED PSEUDO CODE OF
ADVANCE SELECTION SORT
ALGORITHM
In this section, we have presented the pseudo
code of advance selection sort algorithm. To
present the advance selection sort, we present the
shorting methods in Section 2.
Algorithm 2 presents a formal representation of
the proposed idea of advance selection sort
algorithm based on C programming language. In
algorithm 2, these outputs are taken from line 26.
The time complexity of Algorithm 2 depends on
the loops, data storage array, and temporary
storage. Thus the complexity is O(n) where n is
the size of the algorithm. This is the optimum
number of size of shorting algorithm for the
proposed idea as proved in the Algorithm 2. The
details pseudo code of advance selection sort
algorithm is presented below.
* Pseudo code for advance selection short
1. #include<stdio.h>
2. #include<conio.h>
3. void main()
{
4. int a[100],n, i, j, f, min, max, temp;
5. printf ("\n Enter the Number of Elements: ");
6. scanf ("%d",&n);
7. f=n;
printf ("\n Enter %d Elements: ",n);
8. for (i=0;i<n-1;i++)
{
9. Scanf ("%d",&a[i]);
}
10. For (i=0;i<n-1;i++)
{
11. min = i;
12. max = i;
13. for (j=i+1;j<n;j++)
{
14. If (a[min]>a[j])
15. min=j;
16. if (a[max]<a[j])
max = j;
}
17. Temp = a[i];
18. a[i] = a[min];
19. a[min] = temp;
18. a[i] = a[min];
19. a[min] = temp;
20. temp = a[n-1];
21. a[n-1] = a[max];
22. a[max] = temp;
23. n = n- 1;
}
24. Printf ("\
n The Sorted array in ascending order: ");
25. For (i=0;i<f;i++)
{
26. Printf ("%d ",a[i]);
}
27. Getch ();
}
4. CONCLUSION AND FUTURE WORK
This paper presented the double selection-shorting
algorithm. In the customized software development,
shorting of array provide less time and low-cost
development. The programmability of sorting
algorithm is based on the algorithms. This saves the
routine time of array shorting. In double selection,
sort makes up the large number of sorts that is easy
to understand and faster than selection sort. In double
selection sort, the number of comparisons is reduced
and double selection sort similar to selection sort.
As a result, we have designed minimal steps based
shorting methodology to make the algorithm faster
and less time to compute. An optimal step is
maintained to reduce the runtime and hence,
enhancing the performance. Finally, this study reveals
that it is an optimal algorithm and it applied to any
system where the shorting is required. A possible
future work of double shorting is the object-oriented
based algorithm with fewer steps.
REFERENCES
[1] Yijie Han, “Deterministic sorting in O (n log n) time
and linear space.” Proceedings of the third-fourth
annual ACM symposium on Theory of computing.
ACM, 2002.
[2] R. B. Patel, and M. M. S. Rauthan. “Expert Data
Structures with C++.” (2000).
[3] Gray J Bronson,Program development and design
using C++”. Brooks/Cole Publishing Co., 2000.
88 S-JPSET : Vol. 9, Issue 2, ISSN : 2229-7111 (Print) & ISSN : 2454-5767 (Online) copyright  samriddhi, 2010-2017
Improved Double Selection Sort using Algorithm
[4] D P Chavey, “Double sorting: testing their sorting
skills.” Proceedings of the 41stACM technical
symposium on Computer science education. ACM,
2010.
[5] T Tiwari, S. Singh, R Srivastava, and N. Kumar,
(2009, August). A bi-partitioned insertion algorithm
for sorting. 2nd IEEE International Conference on
In Computer Science and Information Technology
ICCSIT, pp. 139-143, 2009.
[6] Ming Zhou, and Hongfa Wang. “An efficient
selection sorting algorithm for two-dimensional
arrays.”, Fourth International Conference on Genetic
and Evolutionary Computing (ICGEC), 2010.
[7] Oyelami Olufemi Moses, Improving the
performance of bubble sort using a modified
diminishing increment sorting.” Scientific Research
and Essays 4.8, pp. 740-744, 2009.
[8] Mikkel Thorup,. “Randomized sorting in O
(nloglogn) time and linear space using addition, shift,
and bit-wise boolean operations.” Journal of
Algorithms, 42.2, pp. 205-230, 2002.
[9] Arne Andersson et al. “Sorting in linear time.
Proceedings of the twenty-seventh annual ACM
symposium on Theory of computing. ACM, 1995.
[10] Paul Beame, and Faith E. Fich. “Optimal bounds for
the predecessor problem and related problems.
Journal of Computer and System Sciences 65.1, pp.
38-72, 2002.
[11] Genshiro Kitagawa, “Monte Carlo filter and
smoother for non-Gaussian nonlinear state space
models.” Journal of computational and graphical
statistics 5.1, pp. 1-25, 1996.
[12] Mikkel Thorup, “Undirected single-source shortest
paths with positive integer weights in linear time.”
Journal of the ACM (JACM), 46.3, pp. 362-394,
1999.
ResearchGate has not been able to resolve any citations for this publication.
Article
Full-text available
Sorting involves rearranging information into either ascending or descending order. There are many sorting algorithms, among which is Bubble Sort. Bubble Sort is not known to be a very good sorting algorithm because it is beset with redundant comparisons. However, efforts have been made to improve the performance of the algorithm. With Bidirectional Bubble Sort, the average number of comparisons is slightly reduced and Batcher's Sort similar to Shellsort also performs significantly better than Bidirectional Bubble Sort by carrying out comparisons in a novel way so that no propagation of exchanges is necessary. Bitonic Sort was also presented by Batcher and the strong point of this sorting procedure is that it is very suitable for a hard-wired implementation using a sorting network. This paper presents a meta algorithm called Oyelami's Sort that combines the technique of Bidirectional Bubble Sort with a modified diminishing increment sorting. The results from the implementation of the algorithm compared with Batcher's Odd-Even Sort and Batcher's Bitonic Sort showed that the algorithm performed better than the two in the worst case scenario. The implication is that the algorithm is faster.
Conference Paper
Full-text available
You're teaching elementary sorting techniques, and you would like your students to do a programming assignment that tests their understanding of the ideas. But all of the code for elementary sorting techniques are in the textbook, easily found on the Web, etc. We suggest the use of two "Double Sorting" techniques whose solution is not standardly available, are fairly straight-forward to code, and offer speed improvements over the "straight" sorts. Double Sorting, the idea of processing two chosen elements simultaneously, applies to both Insertion Sort and Selection Sort, with speedups of 33% and 25%, hence are good enough to justify coding, but not good enough to be in Web collections. Code for this can be written in as little as a dozen lines of C++/Java code, and is easily within the reach of introductory students who understand the basic algorithms. In addition, the ideas used for double sorting are natural first steps in understanding how the N2 sorts can be improved towards the N log N sorts that they will study later. For more advanced students, these double sorts also generate good exercises in the analysis of algorithms.
Article
A new algorithm for the prediction, filtering, and smoothing of non-Gaussian nonlinear state space models is shown. The algorithm is based on a Monte Carlo method in which successive prediction, filtering (and subsequently smoothing), conditional probability density functions are approximated by many of their realizations. The particular contribution of this algorithm is that it can be applied to a broad class of nonlinear non-Gaussian higher dimensional state space models on the provision that the dimensions of the system noise and the observation noise are relatively low. Several numerical examples are shown.
Article
A randomized sorting algorithm is presented, doing as described in the title. Implications of the techniques are discussed for dictionaries and priority queues.
Article
We obtain matching upper and lower bounds for the amount of time to find the predecessor of a given element among the elements of a fixed compactly stored set. Our algorithms are for the unit-cost word RAM with multiplication and are extended to give dynamic algorithms. The lower bounds are proved for a large class of problems, including both static and dynamic predecessor problems, in a much stronger communication game model, but they apply to the cell probe and RAM models.
Article
The single-source shortest paths problem (SSSP) is one of the classic problems in algorithmic graph theory: given a positively weighted graph G with a source vertex s , find the shortest path from s to all other vertices in the graph. Since 1959, all theoretical developments in SSSP for general directed and undirected graphs have been based on Dijkstra's algorithm, visiting the vertices in order of increasing distance from s . Thus, any implementation of Dijkstra's algorithm sorts the vertices according to their distances from s . However, we do not know how to sort in linear time. Here, a deterministic linear time and linear space algorithm is presented for the undirected single source shortest paths problem with positive integer weights. The algorithm avoids the sorting bottleneck by building a hierarchical bucketing structure, identifying vertex pairs that may be visited in any order.
A bi-partitioned insertion algorithm for sorting
  • S Tiwari
  • Singh
  • N Srivastava
  • Kumar
T Tiwari, S. Singh, R Srivastava, and N. Kumar, (2009, August). A bi-partitioned insertion algorithm for sorting. 2nd IEEE International Conference on In Computer Science and Information Technology ICCSIT, pp. 139-143, 2009.