ორობითი ძებნის ალგორითმი: განსხვავება გადახედვებს შორის
[შეუმოწმებელი ვერსია] | [შეუმოწმებელი ვერსია] |
შიგთავსი ამოიშალა შიგთავსი დაემატა
No edit summary |
No edit summary |
||
ხაზი 1:
{{წყარო}}
'''ორობითი ძებნა''' — საძიებო ალგორითმი, რომელიც პოულობს გარკვეული მნიშვნელობის პოზიციას დახარისხებულ (სორტირებულ) მასივში. ის უარეს შემთხვევაში ლოგარითმულ დროში მუშაობს, აკეთებს <math>O(\log n)</math> შედარებას, სადაც <math>n</math> არის ელემენტების რაოდენობა მასივში, <math>O</math> არის [[ასიმპტოტური აღნიშვნა O-დიდი]] და <math>\log</math> არის [[ლოგარითმი]]. დიდ მასივებში ორობითი ძებნა გაცილებით სწრაფია ვიდრე წრფივი ძებნა, თუმცა, აუცილებელია მასივი იყოს დახარისხებული, რათა შევძლოთ ორობითი ძებნის ალგორითმის გამოყენება.
==ალგორითმი==
Line 16 ⟶ 15:
ერთ-ერთი ნახევრის შუა ელემენტის მნიშვნელობა არ დაემთხვევა მოცემული ცვლადის
მნიშვნელობას, ან სანამ საჭირო ელემენტი არ მოიძებნება.
==იმპლემენტაცია C++-ზე==
Line 43 ⟶ 41:
}
</source>
== ლიტერატურა ==
* პროგრამული უზრუნველყოფის დეველოპერი. ნონა ოთხოზორია, ლელა გაჩეჩილაძე.
*''Antti Laaksonen'', Competitive Programmer's Handbook,
[[კატეგორია:ალგორითმები]]
|