Вы находитесь на странице: 1из 107

Radix Sort

CH Gowri Kumar
gkumar007@gmail.com

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 Ai
Increment count[Ai] by 1
After all the input array is read, scan the
count array, printing out a representation
of sorted list.

March 31, 2013

www.gowrikumar.com

Pass 1
Pass 2
Pass 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
.

March 31, 2013

www.gowrikumar.com

Pass 1
Pass 2
Pass 3

Lets sort the following array using radix sort:

Pass 1
Pass 2
Pass 3

64

March 31, 2013

8 216 512 27 729 0

1 343 125

www.gowrikumar.com

Pass 1
Pass 2

Pass 1

March 31, 2013

www.gowrikumar.com

Pass 3

0
1
2
Pass 1
3

Pass 2

Pass 3

5
6
7
8
9
March 31, 2013

www.gowrikumar.com

64

8 216 512 27 729 0

1 343 125

0
1
2
Pass 1
3

Pass 2

Pass 3

5
6
7
8
9
March 31, 2013

www.gowrikumar.com

64

8 216 512 27 729 0

1 343 125

0
1
2
Pass 1
3

Pass 2

Pass 3

5
6
7
8
9
March 31, 2013

www.gowrikumar.com

64

8 216 512 27 729 0

1 343 125

0
1
2
Pass 1
3
4

Pass 2
64

Pass 3

5
6
7
8
9
March 31, 2013

www.gowrikumar.com

64

8 216 512 27 729 0

1 343 125

0
1
2
Pass 1
3
4

Pass 2
64

Pass 3

5
6
7
8
9
March 31, 2013

www.gowrikumar.com

64

8 216 512 27 729 0

1 343 125

0
1
2
Pass 1
3
4

Pass 2
64

Pass 3

5
6
7
8

9
March 31, 2013

www.gowrikumar.com

64

8 216 512 27 729 0

1 343 125

0
1
2
Pass 1
3
4

Pass 2
64

Pass 3

5
6
7
8

9
March 31, 2013

www.gowrikumar.com

64

8 216 512 27 729 0

1 343 125

0
1
2
Pass 1
3

Pass 2

64

Pass 3

5
6

216

7
8

9
March 31, 2013

www.gowrikumar.com

64

8 216 512 27 729 0

1 343 125

0
1
2
Pass 1
3

Pass 2

64

Pass 3

5
6

216

7
8

9
March 31, 2013

www.gowrikumar.com

64

8 216 512 27 729 0

1 343 125

0
1
2

512
Pass 1

Pass 2

64

Pass 3

5
6

216

7
8

9
March 31, 2013

www.gowrikumar.com

64

8 216 512 27 729 0

1 343 125

0
1
2

512
Pass 1

Pass 2

64

Pass 3

5
6

216

7
8

9
March 31, 2013

www.gowrikumar.com

64

8 216 512 27 729 0

1 343 125

0
1
2

512
Pass 1

Pass 2

64

Pass 3

5
6

216

27

9
March 31, 2013

www.gowrikumar.com

64

8 216 512 27 729 0

1 343 125

0
1
2

512
Pass 1

Pass 2

64

Pass 3

5
6

216

27

9
March 31, 2013

www.gowrikumar.com

64

8 216 512 27 729 0

1 343 125

0
1
2

512
Pass 1

Pass 2

64

Pass 3

5
6

216

27

729

March 31, 2013

www.gowrikumar.com

64

8 216 512 27 729 0

1 343 125

0
1
2

512
Pass 1

Pass 2

64

Pass 3

5
6

216

27

729

March 31, 2013

www.gowrikumar.com

64
0

8 216 512 27 729 0

1 343 125

1
2

512
Pass 1

Pass 2

64

Pass 3

5
6

216

27

729

March 31, 2013

www.gowrikumar.com

64
0

8 216 512 27 729 0

1 343 125

1
2

512
Pass 1

Pass 2

64

Pass 3

5
6

216

27

729

March 31, 2013

www.gowrikumar.com

64
0

512

8 216 512 27 729 0

1 343 125

Pass 1
3

Pass 2

64

Pass 3

5
6

216

27

729

March 31, 2013

www.gowrikumar.com

64
0

512

8 216 512 27 729 0

1 343 125

Pass 1
3

Pass 2

64

Pass 3

5
6

216

27

729

March 31, 2013

www.gowrikumar.com

64
0

512

8 216 512 27 729 0

1 343 125

Pass 1
3

343

64

Pass 2
Pass 3

5
6

216

27

729

March 31, 2013

www.gowrikumar.com

64
0

512

8 216 512 27 729 0

1 343 125

Pass 1
3

343

64

Pass 2
Pass 3

5
6

216

27

729

March 31, 2013

www.gowrikumar.com

64
0

512

8 216 512 27 729 0

1 343 125

Pass 1
3

343

64

125

216

27

729

March 31, 2013

Pass 2
Pass 3

www.gowrikumar.com

64
0

512

8 216 512 27 729 0

1 343 125

Pass 1
3

343

64

125

216

27

729

March 31, 2013

Pass 2
Pass 3

www.gowrikumar.com

512
Pass 1

343

64

125

216

27

729

March 31, 2013

Pass 2
Pass 3

www.gowrikumar.com

512
Pass 1

343

64

125

216

27

729

March 31, 2013

Pass 2
Pass 3

www.gowrikumar.com

0
0

512
Pass 1

343

64

125

216

27

729

March 31, 2013

Pass 2
Pass 3

www.gowrikumar.com

0
0
1

512
Pass 1

343

64

125

216

27

729

March 31, 2013

Pass 2
Pass 3

www.gowrikumar.com

0
0
1

512
Pass 1

343

64

125

216

27

729

March 31, 2013

Pass 2
Pass 3

www.gowrikumar.com

0
1

512
Pass 1

343

64

125

216

27

729

March 31, 2013

Pass 2
Pass 3

www.gowrikumar.com

0
1
2

512
Pass 1

343

64

125

216

27

729

March 31, 2013

Pass 2
Pass 3

www.gowrikumar.com

1 512

0
1
2

512
Pass 1

343

64

125

216

27

729

March 31, 2013

Pass 2
Pass 3

www.gowrikumar.com

1 512

0
1
2
Pass 1
3

343

64

125

216

27

729

March 31, 2013

Pass 2
Pass 3

www.gowrikumar.com

Pass 1
Pass 2

Pass 2

March 31, 2013

www.gowrikumar.com

Pass 3

1 512 343 64 125 216 27

8 729

0
1
2
Pass 1
3

Pass 2

Pass 3

5
6
7
8
9
March 31, 2013

www.gowrikumar.com

00 1 512 343 64 125 216 27

8 729

0
1
2
Pass 1
3

Pass 2

Pass 3

5
6
7
8
9
March 31, 2013

www.gowrikumar.com

0
0

1 512 343 64 125 216 27

8 729

1
2
Pass 1
3

Pass 2

Pass 3

5
6
7
8
9
March 31, 2013

www.gowrikumar.com

0
0

01 512 343 64 125 216 27

8 729

1
2
Pass 1
3

Pass 2

Pass 3

5
6
7
8
9
March 31, 2013

www.gowrikumar.com

0
0

1 512 343 64 125 216 27

8 729

1
2
Pass 1
3

Pass 2

Pass 3

5
6
7
8
9
March 31, 2013

www.gowrikumar.com

0
0

1 512 343 64 125 216 27

8 729

1
2
Pass 1
3

Pass 2

Pass 3

5
6
7
8
9
March 31, 2013

www.gowrikumar.com

0
0

512

1 512 343 64 125 216 27

8 729

2
Pass 1
3

Pass 2

Pass 3

5
6
7
8
9
March 31, 2013

www.gowrikumar.com

0
0

512

1 512 343 64 125 216 27

8 729

2
Pass 1
3

Pass 2

Pass 3

5
6
7
8
9
March 31, 2013

www.gowrikumar.com

0
0

512

1 512 343 64 125 216 27

8 729

2
Pass 1
3
4

Pass 2
343

Pass 3

5
6
7
8
9
March 31, 2013

www.gowrikumar.com

0
0

512

1 512 343 64 125 216 27

8 729

2
Pass 1
3
4

Pass 2
343

Pass 3

5
6
7
8
9
March 31, 2013

www.gowrikumar.com

0
0

512

1 512 343 64 125 216 27

8 729

2
Pass 1
3
4

Pass 2
343

Pass 3

5
6

64

7
8
9
March 31, 2013

www.gowrikumar.com

0
0

512

1 512 343 64 125 216 27

8 729

2
Pass 1
3
4

Pass 2
343

Pass 3

5
6

64

7
8
9
March 31, 2013

www.gowrikumar.com

0
0

512

125

1 512 343 64 125 216 27

8 729

Pass 1
3
4

Pass 2
343

Pass 3

5
6

64

7
8
9
March 31, 2013

www.gowrikumar.com

0
0

512

125

1 512 343 64 125 216 27

8 729

Pass 1
3
4

Pass 2
343

Pass 3

5
6

64

7
8
9
March 31, 2013

www.gowrikumar.com

0
0

512

216

125

1 512 343 64 125 216 27

8 729

Pass 1
3
4

Pass 2
343

Pass 3

5
6

64

7
8
9
March 31, 2013

www.gowrikumar.com

0
0

512

216

125

1 512 343 64 125 216 27

8 729

Pass 1
3
4

Pass 2
343

Pass 3

5
6

64

7
8
9
March 31, 2013

www.gowrikumar.com

0
0

512

216

125

27

1 512 343 64 125 216 27

8 729

Pass 1
3
4

Pass 2
343

Pass 3

5
6

64

7
8
9
March 31, 2013

www.gowrikumar.com

0
0

512

216

125

27

1 512 343 64 125 216 27 08 729

Pass 1
3
4

Pass 2
343

Pass 3

5
6

64

7
8
9
March 31, 2013

www.gowrikumar.com

0
0

512

216

125

27

1 512 343 64 125 216 27

8 729

Pass 1
3
4

Pass 2
343

Pass 3

5
6

64

7
8
9
March 31, 2013

www.gowrikumar.com

0
0

512

216

125

27

1 512 343 64 125 216 27

8 729

Pass 1
3
4

Pass 2
343

Pass 3

5
6

64

7
8
9
March 31, 2013

www.gowrikumar.com

0
0

512

216

125

27

1 512 343 64 125 216 27

8 729

729
Pass 1

3
4

Pass 2
343

Pass 3

5
6

64

7
8
9
March 31, 2013

www.gowrikumar.com

0
0

512

216

125

27

1 512 343 64 125 216 27

8 729

729
Pass 1

3
4

Pass 2
343

Pass 3

5
6

64

7
8
9
March 31, 2013

www.gowrikumar.com

512

216

125

27

729
Pass 1

3
4

Pass 2
343

Pass 3

5
6

64

7
8
9
March 31, 2013

www.gowrikumar.com

0
0

512

216

125

27

729
Pass 1

3
4

Pass 2
343

Pass 3

5
6

64

7
8
9
March 31, 2013

www.gowrikumar.com

0
1

512

216

125

27

729
Pass 1

3
4

Pass 2
343

Pass 3

5
6

64

7
8
9
March 31, 2013

www.gowrikumar.com

8 512 216

0
1

512

216

125

27

729
Pass 1

3
4

Pass 2
343

Pass 3

5
6

64

7
8
9
March 31, 2013

www.gowrikumar.com

8 512 216

0
1
2

125

27

729
Pass 1

3
4

Pass 2
343

Pass 3

5
6

64

7
8
9
March 31, 2013

www.gowrikumar.com

8 512 216 125 27 729

0
1
2

125

27

729
Pass 1

3
4

Pass 2
343

Pass 3

5
6

64

7
8
9
March 31, 2013

www.gowrikumar.com

8 512 216 125 27 729

0
1
2
Pass 1
3
4

Pass 2
343

Pass 3

5
6

64

7
8
9
March 31, 2013

www.gowrikumar.com

8 512 216 125 27 729 343

0
1
2
Pass 1
3
4

Pass 2
343

Pass 3

5
6

64

7
8
9
March 31, 2013

www.gowrikumar.com

8 512 216 125 27 729 343

0
1
2
Pass 1
3

Pass 2

Pass 3

5
6

64

7
8
9
March 31, 2013

www.gowrikumar.com

8 512 216 125 27 729 343 64

0
1
2
Pass 1
3

Pass 2

Pass 3

5
6

64

7
8
9
March 31, 2013

www.gowrikumar.com

Pass 1
Pass 2

Pass 3

March 31, 2013

www.gowrikumar.com

Pass 3

8 512 216 125 27 729 343 64

0
1
2
Pass 1
3

Pass 2

Pass 3

5
6
7
8
9
March 31, 2013

www.gowrikumar.com

000 1

8 512 216 125 27 729 343 64

0
1
2
Pass 1
3

Pass 2

Pass 3

5
6
7
8
9
March 31, 2013

www.gowrikumar.com

0
0

8 512 216 125 27 729 343 64

1
2
Pass 1
3

Pass 2

Pass 3

5
6
7
8
9
March 31, 2013

www.gowrikumar.com

0 001 8 512 216 125 27 729 343 64


0

1
2
Pass 1
3

Pass 2

Pass 3

5
6
7
8
9
March 31, 2013

www.gowrikumar.com

0
0

8 512 216 125 27 729 343 64

1
2
Pass 1
3

Pass 2

Pass 3

5
6
7
8
9
March 31, 2013

www.gowrikumar.com

0
0

1 008 512 216 125 27 729 343 64

1
2
Pass 1
3

Pass 2

Pass 3

5
6
7
8
9
March 31, 2013

www.gowrikumar.com

0
0

8 512 216 125 27 729 343 64

1
2
Pass 1
3

Pass 2

Pass 3

5
6
7
8
9
March 31, 2013

www.gowrikumar.com

0
0

8 512 216 125 27 729 343 64

1
2
Pass 1
3

Pass 2

Pass 3

5
6
7
8
9
March 31, 2013

www.gowrikumar.com

0
0

8 512 216 125 27 729 343 64

1
2
Pass 1
3

Pass 2

4
5

Pass 3
512

6
7
8
9
March 31, 2013

www.gowrikumar.com

0
0

8 512 216 125 27 729 343 64

1
2
Pass 1
3

Pass 2

4
5

Pass 3
512

6
7
8
9
March 31, 2013

www.gowrikumar.com

0
0

8 512 216 125 27 729 343 64

1
2

216
Pass 1

Pass 2

4
5

Pass 3
512

6
7
8
9
March 31, 2013

www.gowrikumar.com

0
0

8 512 216 125 27 729 343 64

1
2

216
Pass 1

Pass 2

4
5

Pass 3
512

6
7
8
9
March 31, 2013

www.gowrikumar.com

0
0

125

216

8 512 216 125 27 729 343 64

Pass 1
3

Pass 2

4
5

Pass 3
512

6
7
8
9
March 31, 2013

www.gowrikumar.com

0
0

125

216

8 512 216 125 027 729 343 64

Pass 1
3

Pass 2

4
5

Pass 3
512

6
7
8
9
March 31, 2013

www.gowrikumar.com

0
0

125

216

8 512 216 125 27 729 343 64

27

Pass 1
3

Pass 2

4
5

Pass 3
512

6
7
8
9
March 31, 2013

www.gowrikumar.com

0
0

125

216

8 512 216 125 27 729 343 64

27

Pass 1
3

Pass 2

4
5

Pass 3
512

6
7
8
9
March 31, 2013

www.gowrikumar.com

0
0

125

216

8 512 216 125 27 729 343 64

27

Pass 1
3

Pass 2

4
5

Pass 3
512

6
7

729

8
9
March 31, 2013

www.gowrikumar.com

0
0

125

216

8 512 216 125 27 729 343 64

27

Pass 1
3

Pass 2

4
5

Pass 3
512

6
7

729

8
9
March 31, 2013

www.gowrikumar.com

0
0

125

216

8 512 216 125 27 729 343 64

27

Pass 1
3

343

Pass 2

4
5

Pass 3
512

6
7

729

8
9
March 31, 2013

www.gowrikumar.com

0
0

125

216

8 512 216 125 27 729 343 064

27

Pass 1
3

343

Pass 2

4
5

Pass 3
512

6
7

729

8
9
March 31, 2013

www.gowrikumar.com

0
0

125

216

8 512 216 125 27 729 343 64

27

64

Pass 1
3

343

Pass 2

4
5

Pass 3
512

6
7

729

8
9
March 31, 2013

www.gowrikumar.com

0
0

125

216

8 512 216 125 27 729 343 64

27

64

Pass 1
3

343

Pass 2

4
5

Pass 3
512

6
7

729

8
9
March 31, 2013

www.gowrikumar.com

125

216

27

64

Pass 1
3

343

Pass 2

4
5

Pass 3
512

6
7

729

8
9
March 31, 2013

www.gowrikumar.com

0
0

125

216

27

27 64
64

Pass 1
3

343

Pass 2

4
5

Pass 3
512

6
7

729

8
9
March 31, 2013

www.gowrikumar.com

27 64

0
1

125

216
Pass 1

343

Pass 2

4
5

Pass 3
512

6
7

729

8
9
March 31, 2013

www.gowrikumar.com

27 64 125

0
1

125

216
Pass 1

343

Pass 2

4
5

Pass 3
512

6
7

729

8
9
March 31, 2013

www.gowrikumar.com

27 64 125

0
1
2

216
Pass 1

343

Pass 2

4
5

Pass 3
512

6
7

729

8
9
March 31, 2013

www.gowrikumar.com

27 64 125 216

0
1
2

216
Pass 1

343

Pass 2

4
5

Pass 3
512

6
7

729

8
9
March 31, 2013

www.gowrikumar.com

27 64 125 216

0
1
2
Pass 1
3

343

Pass 2

4
5

Pass 3
512

6
7

729

8
9
March 31, 2013

www.gowrikumar.com

27 64 125 216 343

0
1
2
Pass 1
3

343

Pass 2

4
5

Pass 3
512

6
7

729

8
9
March 31, 2013

www.gowrikumar.com

27 64 125 216 343

0
1
2
Pass 1
3

Pass 2

4
5

Pass 3
512

6
7

729

8
9
March 31, 2013

www.gowrikumar.com

27 64 125 216 343 512

0
1
2
Pass 1
3

Pass 2

4
5

Pass 3
512

6
7

729

8
9
March 31, 2013

www.gowrikumar.com

27 64 125 216 343 512

0
1
2
Pass 1
3

Pass 2

Pass 3

5
6
7

729

8
9
March 31, 2013

www.gowrikumar.com

27 64 125 216 343 512 729

0
1
2
Pass 1
3

Pass 2

Pass 3

5
6
7

729

8
9
March 31, 2013

www.gowrikumar.com

27 64 125 216 343 512 729

0
1
2
Pass 1
3

Pass 2

Pass 3

5
6
7
8
9
March 31, 2013

www.gowrikumar.com

Pass 1
Pass 2
Pass 3

The End

March 31, 2013

www.gowrikumar.com

Вам также может понравиться