COUNTING SORT(A,B,k)
1  for i = 1 to k
2      do c[i] = 0
3  for j = 1 to length[A]
4      do C[A[j]] = C[A[j]] + 1
5  >C[i] now contains the number of elements equal to i
6  for i = 2 to k
7      do C[i] = C[i] + C[i-1]
8  >C[i] now contains the number of elements less than or equal to i
9  for j = length[A] downto 1
10      do B[C[A[j]]] = A[j]
11       C[A[j]] = C[A[J]] - 1