Სარჩევი:

როგორ უბიძგებთ და ამოძრავებთ ელემენტებს დაკავშირებულ სტეკში?
როგორ უბიძგებთ და ამოძრავებთ ელემენტებს დაკავშირებულ სტეკში?

ვიდეო: როგორ უბიძგებთ და ამოძრავებთ ელემენტებს დაკავშირებულ სტეკში?

ვიდეო: როგორ უბიძგებთ და ამოძრავებთ ელემენტებს დაკავშირებულ სტეკში?
ვიდეო: Linked List Implementation of Stacks (Part 1) 2024, მაისი
Anonim

განხორციელება

  1. ბიძგი (ა): დასძენს ელემენტი ა თავზე დასტის . თითოეულს სჭირდება O (1 O(1 O(1) დრო დასტის კვანძი ჩასმულია წინა ნაწილში დაკავშირებული სია .
  2. პოპ (): ის შლის ელემენტი თავზე დასტის .
  3. Top(): ის აბრუნებს ელემენტი თავზე დასტის .

ამის გათვალისწინებით, როგორ უბიძგებთ ელემენტებს დაკავშირებულ სტეკში?

ბიძგი (): ჩასმა The ელემენტი შევიდა დაკავშირებულია ჩამოთვალეთ არაფერი იმის გარდა, თუ რომელია ზედა კვანძი დასტის . pop(): დაბრუნება ზევით ელემენტი დან დასტის და გადაიტანეთ ზედა მაჩვენებელი მეორე კვანძში დაკავშირებულია სია ან დასტის . peek(): დააბრუნე ზედა ელემენტი . display(): ამობეჭდე ყველა ელემენტი დან დასტის.

გარდა ზემოაღნიშნულისა, რა ხდება, როდესაც ახალ კვანძს უბიძგებთ დასტაზე, რომელიც განხორციელებულია დაკავშირებული სიის გამოყენებით? ა) In ბიძგი ოპერაცია, თუ ახალი კვანძები ჩასმულია დასაწყისში დაკავშირებული სია შემდეგ პოპ ოპერაციაში, კვანძები თავიდან უნდა მოიხსნას. ურნა ბიძგი ოპერაცია, თუ ახალი კვანძები ჩასმულია ბოლოს დაკავშირებული სია შემდეგ პოპ ოპერაციაში, კვანძები ბოლოდან უნდა მოიხსნას.

ამ კუთხით, როგორ დააყენებთ და დაწყობთ დასტას?

ძირითადად შემდეგი სამი ძირითადი ოპერაცია ხორციელდება სტეკში:

  1. Push: ამატებს ერთეულს დასტაში. თუ სტეკი სავსეა, მაშინ ამბობენ, რომ ეს არის Overflow მდგომარეობა.
  2. Pop: შლის ერთეულს დასტიდან.
  3. Peek ან Top: აბრუნებს სტეკის ზედა ელემენტს.
  4. isEmpty: აბრუნებს true თუ დასტა ცარიელია, სხვა შემთხვევაში false.

რა არის დაკავშირებული დასტა?

კლასი, რომელიც ახორციელებს ა დაკავშირებული დასტა (ფაქტობრივად, ორი სტეკები ) რომელსაც აქვს მითითებული ქცევები. გაშვების დროის მოთხოვნებისთვის, ელემენტების რაოდენობა დასტის არის n.

გირჩევთ: