14
Chapter 9 Sorting part2 Sorting in linear time Bernard Chen Spring 2006

Chapter 9 Sorting part2 Sorting in linear time

Embed Size (px)

DESCRIPTION

Chapter 9 Sorting part2 Sorting in linear time. Bernard Chen Spring 2006. Counting Sort. Assumes that each of the input elements is an integer in the range 0 to K The basic idea of counting sort is to determine, for each input element x, the number of elements less than x. Counting Sort. - PowerPoint PPT Presentation

Citation preview

Page 1: Chapter 9 Sorting part2 Sorting in linear time

Chapter 9 Sorting part2Sorting in linear time

Bernard ChenSpring 2006

Page 2: Chapter 9 Sorting part2 Sorting in linear time

Counting Sort Assumes that each of the input

elements is an integer in the range 0 to K

The basic idea of counting sort is to determine, for each input element x, the number of elements less than x.

Page 3: Chapter 9 Sorting part2 Sorting in linear time

Counting Sort

1 2 3 4 5 6 7 8

A 2 5 3 0 2 3 0 3

0 1 2 3 4 5

C 2 0 2 3 0 1

Page 4: Chapter 9 Sorting part2 Sorting in linear time

Counting Sort

0 1 2 3 4 5

C 2 0 2 3 0 1

0 1 2 3 4 5

C 2 2 4 7 7 8

Page 5: Chapter 9 Sorting part2 Sorting in linear time

Counting Sort

1 2 3 4 5 6 7 8

B

0 1 2 3 4 5

C 2 2 4 7 7 8

1 2 3 4 5 6 7 8

A 2 5 3 0 2 3 0 3

Page 6: Chapter 9 Sorting part2 Sorting in linear time

Counting Sort

1 2 3 4 5 6 7 8

B 3

0 1 2 3 4 5

C 2 2 4 6 7 8

1 2 3 4 5 6 7 8

A 2 5 3 0 2 3 0 3

Page 7: Chapter 9 Sorting part2 Sorting in linear time

Counting Sort

1 2 3 4 5 6 7 8

B 0 3

0 1 2 3 4 5

C 1 2 4 6 7 8

1 2 3 4 5 6 7 8

A 2 5 3 0 2 3 0 3

Page 8: Chapter 9 Sorting part2 Sorting in linear time

Counting Sort

1 2 3 4 5 6 7 8

B 0 3 3

0 1 2 3 4 5

C 1 2 4 5 7 8

1 2 3 4 5 6 7 8

A 2 5 3 0 2 3 0 3

Page 9: Chapter 9 Sorting part2 Sorting in linear time

Counting Sort

1 2 3 4 5 6 7 8

B 0 2 3 3

0 1 2 3 4 5

C 1 2 3 5 7 8

1 2 3 4 5 6 7 8

A 2 5 3 0 2 3 0 3

Page 10: Chapter 9 Sorting part2 Sorting in linear time

Counting Sort

1 2 3 4 5 6 7 8

B 0 0 2 3 3

0 1 2 3 4 5

C 0 2 3 5 7 8

1 2 3 4 5 6 7 8

A 2 5 3 0 2 3 0 3

Page 11: Chapter 9 Sorting part2 Sorting in linear time

Counting Sort

1 2 3 4 5 6 7 8

B 0 0 2 3 3 3

0 1 2 3 4 5

C 0 2 3 4 7 8

1 2 3 4 5 6 7 8

A 2 5 3 0 2 3 0 3

Page 12: Chapter 9 Sorting part2 Sorting in linear time

Counting Sort

1 2 3 4 5 6 7 8

B 0 0 2 3 3 3 5

0 1 2 3 4 5

C 0 2 3 4 7 7

1 2 3 4 5 6 7 8

A 2 5 3 0 2 3 0 3

Page 13: Chapter 9 Sorting part2 Sorting in linear time

Counting Sort

1 2 3 4 5 6 7 8

B 0 0 2 2 3 3 3 5

0 1 2 3 4 5

C 0 2 2 4 7 7

1 2 3 4 5 6 7 8

A 2 5 3 0 2 3 0 3

Page 14: Chapter 9 Sorting part2 Sorting in linear time

Radix Sort

| | | 329 720 720 329 457 355 329 355 657 436 436 436 839 457 839 457 436 657 355 657 720 329 457 720 355 839 657 839