Radix Sort

Embed Size (px)

DESCRIPTION

This ppt explains the radix sort.

Text of Radix Sort

  • 1.Radix Sort CH Gowri Kumar [email_address]

2. Bucket Sort

  • Given that, we have N integers in the range 0 to M-1
  • Maintain an array count of size M, which is initialized to zero. Thus, count has M cells (buckets).
  • Read A i
  • Increment count[A i ] by 1
  • After all the input array is read, scan the count array, printing out a representation of sorted list.

3. Radix Sort

  • Radix sort is generalization of bucket sort.
  • It uses several passes of bucket sort
  • Perform the bucket sorts by least significant digits
    • First sort by digit in units place
    • Second sort by digit in tens place
    • Third sort by digit in hundreds place
    • .

4. Lets sort the following array using radix sort:64 8 216 512 27 729 0 1 343 125 5. Pass 1 6. 0 1 2 3 4 5 6 7 8 9 7. 64 8 216 512 27 729 0 1 343 125 0 1 2 3 4 5 6 7 8 9 8. 6 4 8 216 512 27 729 0 1 343 125 0 1 2 3 4 5 6 7 8 9 9. 64 8 216 512 27 729 0 1 343 125 0 1 2 3 4 5 6 7 8 9 64 10. 64 8 216 512 27 729 0 1 343 125 0 1 2 3 4 5 6 7 9 64 8 11. 64 8 216 512 27 729 0 1 343 125 0 1 2 3 4 5 6 7 8 9 64 8 12. 64 8 21 6 512 27 729 0 1 343 125 0 1 2 3 4 5 6 7 8 9 64 8 13. 64 8 216 512 27 729 0 1 343 125 0 1 2 3 4 5 6 7 8 9 64 8 216 14. 64 8 216 51 2 27 729 0 1 343 125 0 1 2 3 4 5 6 7 8 9 64 8 216 15. 64 8 216 512 27 729 0 1 343 125 0 1 2 3 4 5 6 7 8 9 64 8 216 512 16. 64 8 216 512 2 7 729 0 1 343 125 0 1 2 3 4 5 6 7 8 9 64 8 216 512 17. 64 8 216 512 27 729 0 1 343 125 0 1 2 3 4 5 6 7 8 9 64 8 216 512 27 18. 64 8 216 512 27 72 9 0 1 343 125 0 1 2 3 4 5 6 7 8 9 64 8 216 512 27 19. 64 8 216 512 27 729 0 1 343 125 0 1 2 3 4 5 6 7 8 9 64 8 216 512 27 729 20. 64 8 216 512 27 729 0 1 343 125 0 1 2 3 4 5 6 7 8 9 64 8 216 512 27 729 21. 64 8 216 512 27 729 0 1 343 125 0 1 2 3 4 5 6 7 8 9 64 8 216 512 27 729 0 22. 64 8 216 512 27 729 0 1 343 125 0 1 2 3 4 5 6 7 8 9 64 8 216 512 27 729 0 23. 64 8 216 512 27 729 0 1 343 125 0 1 2 3 4 5 6 7 8 9 64 8 216 512 27 729 0 1 24. 64 8 216 512 27 729 0 1 34 3 125 0 1 2 3 4 5 6 7 8 9 64 8 216 512 27 729 0 1 25. 64 8 216 512 27 729 0 1 343 125 0 1 2 3 4 5 6 7 8 9 64 8 216 512 27 729 0 1 343 26. 64 8 216 512 27 729 0 1 343 12 5 0 1 2 3 4 5 6 7 8 9 64 8 216 512 27 729 0 1 343 27. 64 8 216 512 27 729 0 1 343 125 0 1 2 3 4 5 6 7 8 9 64 8 216 512 27 729 0 1 343 125 28. 64 8 216 512 27 729 0 1 343 125 0 1 2 3 4 5 6 7 8 9 64 8 216 512 27 729 0 1 343 125 29. 0 1 2 3 4 5 6 7 8 9 64 8 216 512 27 729 0 1 343 125 30. 1 2 3 4 5 6 7 8 9 64 8 216 512 27 729 1 343 125 0 0 31. 0 1 2 3 4 5 6 7 8 9 64 8 216 512 27 729 1 343 125 0 0 32. 0 1 2 3 4 5 6 7 8 9 64 8 216 512 27 729 1 343 125 0 33. 0 2 3 4 5 6 7 8 9 64 8 216 512 27 729 343 125 0 1 1 34. 0 1 2 3 4 5 6 7 8 9 64 8 216 512 27 729 343 125 0 1 1 35. 0 1 2 3 4 5 6 7 8 9 64 8 216 512 27 729 343 125 0 1 36. 0 1 512 2 3 4 5 6 7 8 9 64 8 216 512 27 729 343 125 0 1 37. 0 1 512 3 4 5 6 7 8 9 64 8 216 27 729 343 125 0 1 2 38. Pass 2 39. 0 1 512 343 64 125 216 27 8 729 0 1 2 3 4 5 6 7 8 9 40. 0 0 1 512 343 64 125 216 27 8 729 0 1 2 3 4 5 6 7 8 9 41. 0 1 512 343 64 125 216 27 8 729 1 2 3 4 5 6 7 8 9 0 0 42. 0 0 1 512 343 64 125 216 27 8 729 1 2 3 4 5 6 7 8 9 0 0 43. 0 1 512 343 64 125 216 27 8 729 1 2 3 4 5 6 7 8 9 0 1 0 44. 0 1 5 1 2 343 64 125 216 27 8 729 1 2 3 4 5 6 7 8 9 0 1 0 45. 0 1 512 343 64 125 216 27 8 729 2 3 4 5 6 7 8 9 0 1 0 1 512 46. 0 1 512 3 4 3 64 125 216 27 8 729 2 3 4 5 6 7 8 9 0 1 0 1 512 47. 0 1 512 343 64 125 216 27 8 729 2 3 5 6 7 8 9 0 1 0 1 512 4 343 48. 0 1 512 343 6 4 125 216 27 8 729 2 3 5 6 7 8 9 0 1 0 1 512 4 343 49. 0 1 512 343 64 125 216 27 8 729 2 3 5 7 8 9 0 1 0 1 512 4 343 6 64 50. 0 1 512 343 64 1 2 5 216 27 8 729 2 3 5 7 8 9 0 1 0 1 512 4 343 6 64 51. 0 1 512 343 64 125 216 27 8 729 3 5 7 8 9 0 1 0 1 512 4 343 6 64 2 125 52. 0 1 512 343 64 125 2 1 6 27 8 729 3 5 7 8 9 0 1 0 1 512 4 343 6 64 2 125 53. 0 1 512 343 64 125 216 27 8 729 3 5 7 8 9 0 1 0 1 216 4 343 6 64 2 125 512 54. 0 1 512 343 64 125 216 2 7 8 729 3 5 7 8 9 0 1 0 1 216 4 343 6 64 2 125 512 55. 0 1 512 343 64 125 216 27 8 729 3 5 7 8 9 0 1 0 1 216 4 343 6 64 2 27 512 125 56. 0 1 512 343 64 125 216 27 0 8 729 3 5 7 8 9 0 1 0 1 216 4 343 6 64 2 27 512 125 57. 0 1 512 343 64 125 216 27 8 729 3 5 7 8 9 0 8 0 1 216 4 343 6 64 2 27 512 125 1 58. 0 1 512 343 64 125 216 27 8 7 2 9 3 5 7 8 9 0 8 0 1 216 4 343 6 64 2 27 512 125 1 59. 0 1 512 343 64 125 216 27 8 729 3 5 7 8 9 0 8 0 1 216 4 343 6 64 2 729 512 125 1 27 60. 0 1 512 343 64 125 216 27 8 729 3 5 7 8 9 0 8 0 1 216 4 343 6 64 2 729 512 125 1 27 61. 3 5 7 8 9 0 8 0 1 216 4 343 6 64 2 729 512 125 1 27 62. 0 1 8 3 5 7 8 9 0 8 0 1 216 4 343 6 64 2 729 512 125 1 27 63. 0 1 8 3 5 7 8 9 1 216 4 343 6 64 2 729 512 125 27 0 64. 0 1 8 512 216 3 5 7 8 9 1 216 4 343 6 64 2 729 512 125 27 0 65. 0 1 8 512 216 3 5 7 8 9 4 343 6 64 2 729 125 27 0 1 66. 0 1 8 512 216 125 27 729 3 5 7 8 9 4 343 6 64 2 729 125 27 0 1 67. 0 1 8 512 216 125 27 729 3 5 7 8 9 4 343 6 64 0 1 2 68. 0 1 8 512 216 125 27 729 343 3 5 7 8 9 4 343 6 64 0 1 2 69. 0 1 8 512 216 125 27 729 343 3 5 7 8 9 6 64 0 1 2 4 70. 0 1 8 512 216 125 27 729 343 64 3 5 7 8 9 6 64 0 1 2 4 71. Pass 3 72. 0 1 8 512 216 125 27 729 343 64 3 5 7 8 9 0 1 2 4 6 73. 0 00 1 8 512 216 125 27 729 343 64 3 5 7 8 9 0 1 2 4 6 74. 0 1 8 512 216 125 27 729 343 64 3 5 7 8 9 1 2 4 6 0 0 75. 0 0 01 8 512 216 125 27 729 343 64 3 5 7 8 9 1 2 4 6 0 0 76. 0 1 8 512 216 125 27 729 343 64 3 5 7 8 9 1 2 4 6 0 1 0 77. 0 1 0 08 512 216 125 27 729 343 64 3 5 7 8 9 1 2 4 6 0 1 0 78. 0 1 8 512 216 125 27 729 343 64 3 5 7 8 9 1 2 4 6 0 8 0 1 79. 0 1 8 5 12 216 125 27 729 343 64 3 5 7 8 9 1 2 4 6 0 8 0 1 80. 0 1 8 512 216 125 27 729 343 64 3 7 8 9 1 2 4 6 0 8 0 1 5 512 81. 0 1 8 512 2 16 125 27 729 343 64 3 7 8 9 1 2 4 6 0 8 0 1 5 512 82. 0 1 8 512 216 125 27 729 343 64 3 7 8 9 1 4 6 0 8 0 1 5 512 2 216 83. 0 1 8 512 216 1 25 27 729 343 64 3 7 8 9 1 4 6 0 8 0 1 5 512 2 216 84. 0 1 8 512 216 125 27 729 343 64 3 7 8 9 4 6 0 8 0 1 5 512 2 216 1 125 85. 0 1 8 512 216 125 0 27 729 343 64 3 7 8 9 4 6 0 8 0 1 5 512 2 216 1 125 86. 0 1 8 512 216 125 27 729 343 64 3 7 8 9 4 6 0 27 0 1 5 512 2 216 1 125 8 87. 0 1 8 512 216 125 27 7 29 343 64 3 7 8 9 4 6 0 27 0 1 5 512 2 216 1 125 8 88. 0 1 8 512 216 125 27 729 343 64 3 8 9 4 6 0 27 0 1 5 512 2 216 1 125 8 7 729 89. 0 1 8 512 216 125 27 729 3 43 64 3 8 9 4 6 0 27 0 1 5 512 2 216 1 125 8 7 729 90. 0 1 8 512 216 125 27 729 343 64 8 9 4 6 0 27 0 1 5 512 2 216 1 125 8 7 729 3 343 91. 0 1 8 512 216 125 27 729 343 0 64 8 9 4 6 0 27 0 1 5 512 2 216 1 125 8 7 729 3 343 92. 0 1 8 512 216 125 27 729 343 64 8 9 4 6 0 64 0 1 5 512 2 216 1 125 8 7 729 3 343 27 93. 0 1 8 512 216 125 27 729 343 64 8 9 4 6 0 64 0 1 5 512 2 216 1 125 8 7 729 3 343 27 94. 8 9 4 6 0 64 0 1 5 512 2 216 1 125 8 7 729 3 343 27 95. 0 1 8 27 64 8 9 4 6 0 64 0 1 5 512 2 216 1 125 8 7 729 3 343 27 96. 0 1 8 27 64 8 9 4 6 5 512 2 216 1 125 7 729 3 343 0 97. 0 1 8 27 64 125 8 9 4 6 5 512 2 216 1 125 7 729 3 343 0 98. 0 1 8 27 64 125 8 9 4 6 5 512 2 216 7 729 3 343 0 1 99. 0 1 8 27 64 125 216 8 9 4 6 5 512 2 216 7 729 3 343 0 1 100. 0 1 8 27 64 125 216 8 9 4 6 5 512 7 729 3 343 0 1 2 101. 0 1 8 27 64 125 216 343 8 9 4 6 5 512 7 729 3 343 0 1 2 102. 0 1 8 27 64 125 216 343 8 9 4 6 5 512 7 729 0 1 2 3 103. 0 1 8 27 64 125 216 343 512 8 9 4 6 5 512 7 729 0 1 2 3 104. 0 1 8 27 64 125 216 343 512 8 9 4 6 7 729 0 1 2 3 5 105. 0 1 8 27 64 125 216 343 512 729 8 9 4 6 7 729 0 1 2 3 5 106. 0 1 8 27 64 125 216 343 512 729 8 9 4 6 0 1 2 3 5 7 107. The End