Posts

სტრუკტურული მონაცემები - (ხე, Heap)

Image
                                                                   Heap Heap სტრუკტურული მონაცემი გახლავთ ხის ნაირსახეობა, ყოველ-დღიურ ტერმინოლოგიაში პროგრამისტებისთვის ის ნაცნობია როგორც Binary Heap, რაც გვეუბნება იმას რომ ის ბინარული ხის ნაირსახეობაა. მსგავსად ბინარული ხისა, ამ ხესაც გააჩნია Root კვანძი, მარცხენა და მარჯვენა შვილობილ კვანძებთან ერთად, ერთი განსხვავებით, აქამდე რომელ ხეზეც ვისაუბრეთ ყველა იცავდა ერთი მთავარ პრინციპს, პატარა კვანძები განლაგებულნი უნდა იყვნენ მშობელი კვანძის ხელ-მარცხნივ და დიდი კვანძები ხელ-მარჯვნივ. Heap-ში ობიეკტების განლაგება ხდება მათ ღირებულებაზე დაყრდნობით, აქედან გამომდინარე ეს ხე შეიძლება იყოს ორი ტიპის. 1.      მაქსიმალური ღირებულებით (Max Heap) 2.      მინიმალური ღირებულებით. (Min Heap) მისი ყველაზე ცნობილი...

სტრუკტურული მონაცემები - (ხე AVL Tree)

Image
                                                                                                                                        AVL Tree AVL Tree გახლავთ თვით ბალანსირებადი ხე, რომელიც ბინარული ხის ნაირსახეობაა,  სტრუკტურულ მონაცემებში ეს იყო პირველი ხე, რომელსაც ბალანსირების უნარი გააჩნდა, მისი შემქნელები არიან რუსი(ეთნიკურად ებრაელი) გიორგი ადელსონ ველსკი და უკრაინელი ევგენი ლანდის, დასახელებაც აქედან გამომდინარეობს, Adeson Velski Landis (AVL). მსგავსად Red Black Tree-სა არც ეს ხე არის იდეალურად ბალანსირებული, (Perfectly Balanced) თუმცა ერთი უპირატესობა რაც ამ კონკრეტულ ხეს გააჩნია RBT ხესთან მიმართებაში არის ის რომ ძიება ხდ...

სტრუკტურული მონაცემები - (ხე Red Black Tree)

Image
                                                               Red Black Tree Red Black Tree პროგრამირებაში ალბათ ყველაზე გამოყენებადი ხეა, მას იყენებს უამრავი ოპერაციული სისტემა და სტრუკტურული მონაცემი, მაგალითად ჯავაში TreeMap სტრუკტურული მონაცემი აგებულია მასზე დაყრდნობით, როგორც  ესეთი თვითონ Red Black Tree არის Binary Search Tree-ს ნაირსახეობა, რომელსაც გააჩნია დამატებითი ფუნქციონალიზმი და ეს ფუნქციონალიზმია კვანძების გაფერადება, დასახელებიდანაც მიხვდით ალბათ რო მასში შენახული კვანძი ან წითელია ან შავი. ძირითადი უპირატესობა რომელიც მას გააჩნია ბინარულ ხესთან მიმართებაში და რამაც მისი ასეთი პოპულარობა გამოიწვია გახლავთ თვით ბალანსირების უნარი, თვით ბალანსირებას ის ახდენს ფერებზე დაყრდნობით,  საიდანაც სურვილის და მიხედვით შესაძლებელია ტრანსოფრმაცია განიცადოს Perfect ბინარულ ხემდე.  სანამ დეტალურად გა...