c o mp l e x i t y o f r e c u r s i v e f u n c t i o n
play

C o mp l e x i t y o f r e c u r s i v e f u n - PowerPoint PPT Presentation

C o mp l e x i t y o f r e c u r s i v e f u n c t i o n s ( W e i s s 7 . 5 ) C a l c u l a t i n g c o m p l e x i t y L e t T ( n ) b e t h e t i m e m e r g e s o


  1. C o mp l e x i t y o f r e c u r s i v e f u n c t i o n s ( W e i s s 7 . 5 )

  2. C a l c u l a t i n g c o m p l e x i t y L e t T ( n ) b e t h e t i m e m e r g e s o r t t a k e s o n a l i s t o f s i z e n Me r g e s o r t d o e s O ( n ) w o r k t o s p l i t t h e l i s t i n t w o , t w o r e c u r s i v e c a l l s o f s i z e n / 2 a n d O ( n ) w o r k t o m e r g e t h e t w o h a l v e s t o g e t h e r , s o . . . T ( n ) = O ( n ) + 2 T ( n / 2 ) L i n e a r a m o u n t P l u s t w o o f t i m e s p e n t i n T i m e t o s o r t a r e c u r s i v e c a l l s s p l i t t i n g + l i s t o f s i z e n o f s i z e n / 2 m e r g i n g

  3. C a l c u l a t i n g c o m p l e x i t y P r o c e d u r e f o r c a l c u l a t i n g c o m p l e x i t y o f a r e c u r s i v e a l g o r i t h m : ● Wr i t e d o w n a r e c u r r e n c e r e l a t i o n e . g . T ( n ) = O ( n ) + 2 T ( n / 2 ) ● S t h e r e c u r r e n c e r e l a t i o n t o g e t a f o r m u l a o l v e f o r T ( n ) ( d i ffjc u l t ! ) Tie r e i s n ' t a g e n e r a l w a y o f s o l v i n g a n y r e c u r r e n c e r e l a t i o n – w e ' l l j u s t s e e a f e w f a m i l i e s o f t h e m

  4. A p p r o a c h 1 : d r a w a d i a g r a m

  5. n T ( n ) 2 T ( n / 2 ) n / 2 n / 2 O ( l o g n ) T o t a l t i m e i s “ l e v e l s ” O ( n l o g n ) ! n / 4 n / 4 n / 4 n / 4 4 T ( n / 4 ) 8 T ( n / 8 ) n / 8 n / 8 n / 8 n / 8 n / 8 n / 8 n / 8 n / 8 O ( n ) t i m e p e r l e v e l

  6. A n o t h e r e x a m p l e : T ( n ) = O ( 1 ) + 2 T ( n - 1 )

  7. 1 T ( n ) 2 T ( n - 1 ) 1 1 O ( n ) “ l e v e l s ” 1 1 1 1 4 T ( n - 2 ) 8 T ( n - 3 ) 1 1 1 1 1 1 1 1 a m o u n t o f w o r k d o u b l e s a t e a c h l e v e l

  8. 1 T ( n ) 2 T ( n - 1 ) 1 1 O ( n ) T o t a l t i m e i s “ l e v e l s ” n O ( 2 ) ! 1 1 1 1 4 T ( n - 2 ) 8 T ( n - 3 ) 1 1 1 1 1 1 1 1 a m o u n t o f w o r k d o u b l e s a t e a c h l e v e l

  9. T h i s a p p r o a c h G o o d f o r b u i l d i n g a n i n t u i t i o n Ma y b e a b i t e r r o r - p r o n e A p p r o a c h 2 : e x p a n d o u t t h e d e fj n i t i o n E x a m p l e : s o l v i n g T ( n ) = O ( 1 ) + T ( n - 1 )

  10. E x p a n d i n g o u t r e c u r r e n c e r e l a t i o n s T ( n ) = 1 + T ( n - 1 ) = 2 + T ( n - 2 ) T ( 0 ) i s a c o n s t a n t , s o O ( 1 ) = 3 + T ( n - 3 ) = … = n + T ( 0 ) = O ( n )

  11. A n o t h e r e x a m p l e : T ( n ) = O ( n ) + T ( n - 1 ) T ( n ) = n + T ( n - 1 ) = n + ( n - 1 ) + T ( n - 2 ) = n + ( n - 1 ) + ( n - 2 ) + T ( n - 3 ) = … = n + ( n - 1 ) + ( n - 2 ) + … + 1 + T ( 0 ) = n ( n + 1 ) / 2 + T ( 0 ) = O ( n ) 2

  12. A n o t h e r e x a m p l e : T ( n ) = O ( 1 ) + T ( n / 2 ) T ( n ) = 1 + T ( n / 2 ) = 2 + T ( n / 4 ) = 3 + T ( n / 8 ) = … = l o g n + T ( 1 ) = O ( l o g n )

  13. A n o t h e r e x a m p l e : T ( n ) = O ( n ) + T ( n / 2 ) T ( n ) = n + T ( n / 2 ) : T ( n ) = n + T ( n / 2 ) = n + n / 2 + T ( n / 4 ) = n + n / 2 + n / 4 + T ( n / 8 ) = … = n + n / 2 + n / 4 + … < 2 n = O ( n )

  14. F u n c t i o n s t h a t r e c u r s e o n c e T ( n ) = O ( 1 ) + T ( n - 1 ) : T ( n ) = O ( n ) T ( n ) = O ( n ) + T ( n - 1 ) : T ( n ) = O ( n ) 2 T ( n ) = O ( 1 ) + T ( n / 2 ) : T ( n ) = O ( l o g n ) T ( n ) = O ( n ) + T ( n / 2 ) : T ( n ) = O ( n ) A n : a l m o s t - r u l e - o f - t h u m b ● S o l u t i o n i s m a x i m u m r e c u r s i o n d e p t h t i m e s a m o u n t o f w o r k i n o n e c a l l ( e x c e p t t h a t t h i s r u l e o f t h u m b w o u l d g i v e O ( n l o g n ) f o r t h e l a s t c a s e )

  15. D i v i d e - a n d - c o n q u e r a l g o r i t h m s T ( n ) = O ( n ) + 2 T ( n / 2 ) : T ( n ) = O ( n l o g n ) ● Tii s i s m e r g e s o r t ! Tie r e i s a n i c e p r o o f i n t h e b o o k ( t h e o r e m 7 . 4 ) . T ( n ) = 2 T ( n - 1 ) : T ( n ) = O ( 2 ) n ● B e c a u s e 2 r e c u r s i v e c a l l s o f d e p t h n n O t h e r c a s e s : ( Wi k i p e d i a ) m a s t e r t h e o r e m o r t h e o r e m 7 . 5 f r o m b o o k ● K i n d o f fj d d l y – b e s t t o j u s t l o o k i t u p i f y o u n e e d i t

  16. C o m p l e x i t y o f r e c u r s i v e f u n c t i o n s B a s i c i d e a – r e c u r r e n c e r e l a t i o n s E a s y e n o u g h t o w r i t e d o w n , h a r d t o s o l v e ● O n e t e c h n i q u e : e x p a n d o u t t h e r e c u r r e n c e a n d s e e w h a t h a p p e n s ● A n o t h e r r u l e o f t h u m b : m u l t i p l y w o r k d o n e p e r l e v e l w i t h n u m b e r o f l e v e l s ● D r a w i n g a d i a g r a m ( l i k e f o r q u i c k s o r t ) c a n h e l p ! Ma s t e r t h e o r e m f o r d i v i d e a n d c o n q u e r L u c k i l y , i n p r a c t i c e y o u c o m e a c r o s s t h e s a m e f e w r e c u r r e n c e r e l a t i o n s , s o y o u j u s t n e e d t o k n o w h o w t o s o l v e t h o s e

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend