b i n a r y s e a r c h
play

B i n a r y s e a r c h S e a r c h i n g S u - PowerPoint PPT Presentation

B i n a r y s e a r c h S e a r c h i n g S u p p o s e I g i v e y o u a n a r r a y , a n d a s k y o u t o fj n d i f a p a r t i c u l a r v a l u e i s i n i t ,


  1. B i n a r y s e a r c h

  2. S e a r c h i n g S u p p o s e I g i v e y o u a n a r r a y , a n d a s k y o u t o fj n d i f a p a r t i c u l a r v a l u e i s i n i t , s a y 4 . 5 3 9 2 8 7 3 2 1 4 Tie o n l y w a y i s t o l o o k a t e a c h e l e m e n t i n t u r n . Tii s i s c a l l e d . l i n e a r s e a r c h Y o u m i g h t h a v e t o l o o k a t e v e r y e l e m e n t b e f o r e y o u fj n d t h e r i g h t o n e .

  3. S e a r c h i n g B u t w h a t i f t h e a r r a y i s s o r t e d ? 1 2 2 3 3 4 5 7 8 9 Tie n w e c a n u s e . b i n a r y s e a r c h

  4. B i n a r y s e a r c h S u p p o s e w e w a n t t o l o o k f o r 4 . W e s t a r t b y l o o k i n g a t t h e e l e m e n t h a l f w a y a l o n g t h e a r r a y , w h i c h h a p p e n s t o b e 3 . 1 2 2 3 3 4 5 7 8 9

  5. B i n a r y s e a r c h 3 i s l e s s t h a n 4 . S i n c e t h e a r r a y i s s o r t e d , w e k n o w t h a t 4 m u s t c o m e a f t e r 3 . W e c a n i g n o r e e v e r y t h i n g b e f o r e 3 . 1 2 2 3 3 4 5 7 8 9

  6. B i n a r y s e a r c h N o w w e r e p e a t t h e p r o c e s s . W e l o o k a t t h e e l e m e n t h a l f w a y a l o n g w h a t ' s l e f t o f t h e a r r a y . Tii s h a p p e n s t o b e 7 . 1 2 2 3 3 4 5 7 8 9

  7. B i n a r y s e a r c h 7 i s g r e a t e r t h a n 4 . S i n c e t h e a r r a y i s s o r t e d , w e k n o w t h a t 4 m u s t c o m e b e f o r e 7 . W e c a n i g n o r e e v e r y t h i n g a f t e r 7 . 1 2 2 3 3 4 5 7 8 9

  8. B i n a r y s e a r c h W e r e p e a t t h e p r o c e s s . W e l o o k h a l f w a y a l o n g t h e a r r a y a g a i n . W e fj n d 4 ! 1 2 2 3 3 4 5 7 8 9

  9. P e r f o r m a n c e o f b i n a r y s e a r c h B i n a r y s e a r c h r e p e a t e d l y c h o p s t h e a r r a y i n h a l f ● I f w e d o u b l e t h e s i z e o f t h e a r r a y , w e n e e d t o l o o k a t o n e m o r e a r r a y e l e m e n t ● Wi t h a n a r r a y o f s i z e 2 , a f t e r n t r i e s , w e a r e d o w n t o 1 n e l e m e n t ● O n a n a r r a y o f s i z e n t a k e s O ( l o g n ) t i m e ! O n a n a r r a y o f a b i l l i o n e l e m e n t s , n e e d t o 3 0 s e a r c h e l e m e n t s ( c o m p a r e d t o a b i l l i o n t r i e s f o r l i n e a r s e a r c h ! )

  10. I m p l e m e n t i n g b i n a r y s e a r c h lo hi . K e e p t w o i n d i c e s a n d Tie y r e p r e s e n t t h e p a r t o f t h e a r r a y t o s e a r c h . 1 2 2 3 3 4 5 7 8 9 l o mi d h i mid = (lo + hi) / 2 L e t a n d l o o k a t a[mid] lo = mid+1 , hi – t h e n e i t h e r s e t o r = mid-1 , a[mid] d e p e n d i n g o n t h e v a l u e o f

  11. I m p l e m e n t i n g b i n a r y s e a r c h lo hi . K e e p t w o i n d i c e s a n d Tie y r e p r e s e n t hi = mid - 1 t h e p a r t o f t h e a r r a y t o s e a r c h . 1 2 2 3 3 4 5 7 8 9 l o h i mi d mid = (lo + hi) / 2 L e t a n d l o o k a t a[mid] lo = mid+1 , hi – t h e n e i t h e r s e t o r = mid-1 , a[mid] d e p e n d i n g o n t h e v a l u e o f

  12. S o r t i n g

  13. S o r t i n g 5 3 9 2 8 7 3 2 1 4 1 2 2 3 3 4 5 7 8 9 Z i l l i o n s o f s o r t i n g a l g o r i t h m s ( b u b b l e s o r t , i n s e r t i o n s o r t , s e l e c t i o n s o r t , q u i c k s o r t , h e a p s o r t , m e r g e s o r t , s h e l l s o r t , c o u n t i n g s o r t , r a d i x s o r t , … )

  14. I n s e r t i o n s o r t I m a g i n e s o m e o n e i s d e a l i n g y o u c a r d s . Wh e n e v e r y o u g e t a n e w c a r d y o u p u t i t i n t o t h e r i g h t p l a c e i n y o u r h a n d : Tii s i s t h e i d e a o f . i n s e r t i o n s o r t

  15. I n s e r t i o n s o r t S o r t i n g : 5 3 9 2 8 S t a r t b y “ p i c k i n g u p ” t h e 5 : 5

  16. I n s e r t i o n s o r t S o r t i n g : 5 3 9 2 8 Tie n i n s e r t t h e 3 i n t o t h e r i g h t p l a c e : 3 5

  17. I n s e r t i o n s o r t S o r t i n g : 5 3 9 2 8 Tie n t h e 9 : 3 5 9

  18. I n s e r t i o n s o r t S o r t i n g : 5 3 9 2 8 Tie n t h e 2 : 2 3 5 9

  19. I n s e r t i o n s o r t S o r t i n g : 5 3 9 2 8 F i n a l l y t h e 8 : 2 3 5 8 9

  20. C o m p l e x i t y o f i n s e r t i o n s o r t I n s e r t i o n s o r t d o e s n i n s e r t i o n s f o r a n a r r a y o f s i z e n D o e s t h i s m e a n i t i s O ( n ) ? N o ! A n i n s e r t i o n i s n o t c o n s t a n t t i m e . T o i n s e r t i n t o a s o r t e d a r r a y , y o u m u s t m o v e a l l t h e e l e m e n t s u p o n e , w h i c h i s O ( n ) . Tiu s t o t a l i s O ( n ) . 2

  21. I n - p l a c e i n s e r t i o n s o r t Tii s v e r s i o n o f i n s e r t i o n s o r t n e e d s t o m a k e a n e w a r r a y t o h o l d t h e r e s u l t A n i n - p l a c e s o r t i n g a l g o r i t h m i s o n e t h a t d o e s n ' t n e e d t o m a k e t e m p o r a r y a r r a y s ● H a s t h e p o t e n t i a l t o b e m o r e e ffjc i e n t L e t ' s m a k e a n i n - p l a c e i n s e r t i o n s o r t ! B a s i c i d e a : l o o p t h r o u g h t h e a r r a y , a n d i n s e r t e a c h e l e m e n t i n t o t h e p a r t w h i c h i s a l r e a d y s o r t e d

  22. I n - p l a c e i n s e r t i o n s o r t 5 3 9 2 8 Tie fj r s t e l e m e n t o f t h e a r r a y i s s o r t e d : 5 3 9 2 8 Wh i t e b i t : s o r t e d

  23. I n - p l a c e i n s e r t i o n s o r t 5 3 9 2 8 I n s e r t t h e 3 i n t o t h e c o r r e c t p l a c e : 3 5 9 2 8

  24. I n - p l a c e i n s e r t i o n s o r t 3 5 9 2 8 I n s e r t t h e 9 i n t o t h e c o r r e c t p l a c e : 3 5 9 2 8

  25. I n - p l a c e i n s e r t i o n s o r t 3 5 9 2 8 I n s e r t t h e 2 i n t o t h e c o r r e c t p l a c e : 2 3 5 9 8

  26. I n - p l a c e i n s e r t i o n s o r t 2 3 5 9 8 I n s e r t t h e 8 i n t o t h e c o r r e c t p l a c e : 2 3 5 8 9

  27. I n - p l a c e i n s e r t i o n O n e w a y t o d o i t : r e p e a t e d l y s w a p t h e e l e m e n t w i t h i t s n e i g h b o u r o n t h e l e f t , u n t i l i t ' s i n t h e r i g h t p o s i t i o n 2 3 5 9 4 2 3 5 4 9

  28. I n - p l a c e i n s e r t i o n 2 3 5 4 9 2 3 4 5 9 while n > 0 and array[n] > array[n-1] swap array[n] and array[n-1] n = n-1

  29. I n - p l a c e i n s e r t i o n A n i m p r o v e m e n t : i n s t e a d o f s w a p p i n g , m o v e e l e m e n t s u p w a r d s t o m a k e a “ h o l e ” w h e r e w e p u t t h e n e w v a l u e 2 3 5 9 4 2 3 5 9

  30. I n - p l a c e i n s e r t i o n 2 3 5 9 4 2 3 5 9 2 3 5 9

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