Advertisement
EXTREMEXPLOIT

Radix Sort

Jan 5th, 2020
277
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 0.65 KB | None | 0 0
  1. def CountingSort(Array, Exp):
  2.     N = len(Array)
  3.     Output = [0] * (N)
  4.     Count = [0] * (10)
  5.     for i in range(0, N):
  6.         Index = (Array[i]//Exp)
  7.         Count[(Index)%10] += 1
  8.  
  9.     for i in range(1,10):
  10.         Count[i] += Count[i-1]
  11.     i = N-1
  12.     while i>=0:
  13.         Index = (Array[i]//Exp)
  14.         Output[Count[(Index)%10] - 1] = Array[i]
  15.         Count[(Index)%10] -= 1
  16.         i -= 1
  17.     i = 0
  18.     for i in range(0, len(Array)):
  19.         Array[i] = Output[i]
  20.  
  21. def RadixSort(Array):
  22.     Max = max(Array)
  23.     Exp = 1
  24.     while Max/Exp > 0:
  25.         CountingSort(Array, Exp)
  26.         Exp *= 10
  27.    
  28.     return Array
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement