Professional Documents
Culture Documents
Friday
A= array forDay
sorting
Faheem Janjua
B= is sorted array
Counting Sort
K= Max No
There is limitation in this sorting that this sorting algorithm only sort integer values and
C= auxiliary array use for only functioning without output.
you must aware of Max & Min value in the array. Before selecting counting sort we use
Max & Min algorithm in this sorting.
Algorithm for Min
Min (A) :
{
min=A[1]
for i=2 to n
if min > A[i] then
min = A[i]
return min
Functionality
1
2
A=
K
0
C=
1
0
2
0
3
0
4
0
5
0
First Loop
for i=o to K
C [1] =0
C [2] =0
C [3] =0
C [4] =0
C [5] =0
C [6] =0
Second Loop
C [A[j]] = C [A[j]] + 1
Now here the position of array of C is 0
J=1
C [A[j]] = C 2
0
2
3
[A[j]] +1
C [A [1]] = C [A [1] +1
C [2] = C [2] +1
C [2] = 1
J=2
C [A[j]] = C [A[j]] +1
C [A [2]] = C [A [2] +1
C [5] = C [5] +1
C [5] = 1
J=3
C [A[j]] = C [A[j]] +1
C [A [3]] = C [A [3] +1
C [3] = C [3] +1
C [3] = 1
J=4
C [A[j]] = C [A[j]] +1
C [A [4]] = C [A [4] +1
C [0] = C [0] +1
C [0] = 1
J=5
C [A[j]] = C [A[j]] +1
C
0
J=6
C [A[j]] = C [A[j]] +1
C [A [6]] = C [A [6] +1
C [3] = C [3] +1
C [3] = 2
J=7
C [A[j]] = C [A[j]] +1
C [A [7]] = C [A [7] +1
C [0] = C [0] +1
C [0] = 2
J=8
C [A[j]] = C [A[j]] +1
C [A [8]] = C [A [8] +1
C [3] = C [3] +1
C [3] = 3
C=
Third Loop
c[i] = c[i] + c [i-1]
i.1
C[i] = C[i] + C [i-1]
C[i] = C [1] + C [1-1]
C[i] = 2+0
=2
i.2
C[i] = C[i] + C [i-1]
i.3
C[i] = C[i] + C [i-1]
C[i] = C [3] + C [3-1]
C[i] = 3+4
=7
i.4
C[i] = C[i] + C [i-1]
C[i] = C [4] + C [4-1]
C[i] = 4+3
=7
i.5
C[i] = C[i] + C [i-1]
C[i] = C [5] + C [5-1]
C[i] = 1+7
=8
Fourth Loop
B[c [A[j]]] = A[j]
C [A[j]] = c [A[j]] -1
J=8
B[C [A [8]]] =A [8]
B[C [3]] = A [8]
B [7] = A [8]
B [7] = 3
C [A [8]] =
C [A [8]] 1
C [3] = C [3] -1
J=7
B[C [A [7]]] =A [7]
B[C [0]] = A [0]
B [0] = A [0]
B [0] = 0
C [A [7]] = C [A [7]] 1
C [0] = C [0] -1
C [0] = C [0]
C [0] = 7-1
=6
J=6
B[C [A [6]]] =A [6]
B[C [3]] = A [5]
B [7] = A [5]
B [7] = 3
C [A [6]] = C [A [6]] 1
C [3] = C [3] -1
C [3] = C [2]
C [3] = 7-1
=6
J=5
B[C [A [5]]] =A [5]
B[C [3]] = A [8]
B [7] = A [8]
B [7] = 3
C [A [5]] = C [A [5]] 1
C [3] = C [3] -1
C [3] = C [2]
C [3] = 7-1
=6