სხვაობა დასტასა და რიგს შორის

სხვაობა დასტასა და რიგს შორის
სხვაობა დასტასა და რიგს შორის

ვიდეო: სხვაობა დასტასა და რიგს შორის

ვიდეო: სხვაობა დასტასა და რიგს შორის
ვიდეო: Internal Audit vs External Audit 2024, ივლისი
Anonim

Stack vs Queue

Stack არის მოწესრიგებული სია, რომელშიც სიის ელემენტების ჩასმა და წაშლა შესაძლებელია მხოლოდ ერთ ბოლოში, რომელსაც ეწოდება ზედა. ამ მიზეზის გამო, სტეკი განიხილება, როგორც უკანასკნელი პირველი გამოსვლის (LIFO) მონაცემთა სტრუქტურა. რიგი ასევე არის მოწესრიგებული სია, რომელშიც სიის ელემენტების ჩასმა ხდება ერთ ბოლოში, რომელსაც ეწოდება უკანა, ხოლო ელემენტების წაშლა ხდება მეორე ბოლოში, რომელსაც ეწოდება წინა. ჩასმისა და წაშლის ეს მექანიზმი რიგს აქცევს მონაცემთა სტრუქტურას First in First Out (FIFO).

რა არის Stack?

როგორც უკვე აღვნიშნეთ, დასტა არის მონაცემთა სტრუქტურა, რომელშიც ელემენტები ემატება და ამოღებულია მხოლოდ ერთი ბოლოდან, რომელსაც ზედა ეწოდება.სტეკები იძლევა მხოლოდ ორ ფუნდამენტურ ოპერაციას, სახელწოდებით push და pop. ბიძგის ოპერაცია ამატებს ახალ ელემენტს სტეკის ზედა ნაწილში. პოპ ოპერაცია შლის ელემენტს სტეკის ზემოდან. თუ სტეკი უკვე სავსეა, როდესაც შესრულდება ბიძგის ოპერაცია, იგი განიხილება, როგორც სტეკის გადადინება. თუ პოპ ოპერაცია შესრულებულია უკვე ცარიელ სტეკზე, ის განიხილება, როგორც სტეკის ქვეflow. ოპერაციების მცირე რაოდენობის გამო, რომლებიც შეიძლება შესრულდეს სტეკზე, იგი განიხილება როგორც შეზღუდული მონაცემთა სტრუქტურა. გარდა ამისა, იმის მიხედვით, თუ როგორ არის განსაზღვრული push და pop ოპერაციები, ცხადია, რომ ელემენტები, რომლებიც ბოლოს დამატებულია სტეკში, პირველ რიგში გამოდიან სტეკიდან. ამიტომ სტეკი განიხილება, როგორც LIFO მონაცემთა სტრუქტურა.

გამოსახულება
გამოსახულება
გამოსახულება
გამოსახულება

რა არის რიგი?

რიგში, ელემენტები ემატება რიგის უკანა მხრიდან და ამოღებულია რიგის წინა მხრიდან. იმის გამო, რომ ელემენტები, რომლებიც პირველად დაემატება, პირველ რიგში მოიხსნება რიგიდან, ის ინარჩუნებს FIFO წესრიგს. ელემენტების დამატებისა და ამოღების ამ თანმიმდევრობის გამო, რიგი წარმოადგენს გადახდის ხაზის იდეას. რიგის მიერ მხარდაჭერილი ზოგადი ოპერაციები არის ოპერაციები en-queue და de-queue. En-queue ოპერაცია დაამატებს ელემენტს რიგის უკანა მხარეს, ხოლო de-queue ოპერაცია შლის ელემენტს რიგის წინა მხრიდან. ზოგადად, რიგებს არ აქვს ლიმიტი ელემენტების რაოდენობაზე, რომლებიც შეიძლება დაემატოს რიგში მეხსიერების შეზღუდვების გარდა.

რა განსხვავებაა Stack-სა და Queue-ს შორის?

მიუხედავად იმისა, რომ სტეკებიც და რიგებიც არის ერთგვარი შეკვეთილი სიები, მათ აქვთ მნიშვნელოვანი განსხვავებები. სტეკებში, ელემენტების დამატება ან წაშლა შეიძლება განხორციელდეს მხოლოდ ერთი ბოლოდან, რომელსაც ეწოდება ზემოდან, ხოლო რიგებში ელემენტების დამატება ხდება ერთი ბოლოდან, რომელსაც ეწოდება უკანა ნაწილი, ხოლო ნივთების წაშლა ხდება მეორე ბოლოდან, რომელსაც ეწოდება წინა.სტეკში ნივთები, რომლებიც ბოლოს დაემატება სტეკს, პირველ რიგში ამოიღება დასტიდან. ამიტომ სტეკი განიხილება, როგორც LIFO მონაცემთა სტრუქტურა. რიგებში, პირველ რიგში დამატებული ელემენტი პირველ რიგში ამოიშლება რიგიდან. ამიტომ რიგი განიხილება როგორც FIFO მონაცემთა სტრუქტურა.

დაკავშირებული ბმული:

სხვაობა დასტასა და გროვას შორის

გირჩევთ: