SLIDE 4 http://www.cp.eng.chula.ac.th/faculty/spj
) 1 ( ) 1 ( ) 1 ( ) ( ) 1 ( ) 1 ( ) (
7 2 6 2 5 2 4 3 2 1
Г
c t c t c t c n c n c n c n t
n j j n j j n j j
Insertion Sort : Best-Case
function linear c c c c n c c c c c n c c c c n c n c n c n t
n j n j n j best
Г Г
Г Г Г
Г
( ) ( ) 1 ( ) 1 1 ( ) 1 1 ( ) 1 ( ) 1 ( ) 1 ( ) (
7 4 3 2 7 4 3 2 1 7 2 6 2 5 2 4 3 2 1
Best-case : tj =1
http://www.cp.eng.chula.ac.th/faculty/spj
Insertion Sort : Worst-Case
) 1 ( ) 1 ( ) 1 ( ) ( ) 1 ( ) 1 ( ) (
7 2 6 2 5 2 4 3 2 1
Г
c t c t c t c n c n c n c n t
n j j n j j n j j
quadratic c c c c n c c c c c c c n c c c n c j c j c j c n c n c n c n t
n j n j n j worst
Г Г
Г Г Г
Г
Г
4 3 2 7 6 5 4 3 2 1 2 6 5 4 7 2 6 2 5 2 4 3 2 1
2 2 ) 1 ( ) 1 ( ) 1 ( ) ( ) 1 ( ) 1 ( ) (
Worst-case : tj = j
http://www.cp.eng.chula.ac.th/faculty/spj
Insertion Sort : Average-Case
) 1 ( ) 1 ( ) 1 ( ) ( ) 1 ( ) 1 ( ) (
7 2 6 2 5 2 4 3 2 1
Г
c t c t c t c n c n c n c n t
n j j n j j n j j
quadratic c c c c n c c c c c c c n c c c n c j c j c j c n c n c n c n t
n j n j n j avg
Г Г
Г Г Г
Г
Г
4 3 2 7 6 5 4 3 2 1 2 6 5 4 7 2 6 2 5 2 4 3 2 1
4 4 ) 1 ( ) 1 2 / ( ) 1 2 / ( ) 2 / ( ) 1 ( ) 1 ( ) (
Average-case : tj = j/2
http://www.cp.eng.chula.ac.th/faculty/spj
Insertion Sort
time sizes of instances n
worst case best case average case
http://www.cp.eng.chula.ac.th/faculty/spj
Best, Average, Worst
Best-case is usually ruled out Average-case is good,
but hard to measure effectively not clear what an average input is
Worst-case is usually fairly easy to analyze and
- ften close to the average
http://www.cp.eng.chula.ac.th/faculty/spj
Analysis : Simplification
Time the number of elementary instructions get executed