Yığına Karşı Sıra
Yığın, liste öğelerinin eklenmesinin ve silinmesinin yalnızca üst adı verilen bir uçta yapılabileceği sıralı bir listedir. Bu nedenle, yığın ilk giren ilk çıkar (LIFO) veri yapısı olarak kabul edilir. Kuyruk ayrıca liste öğelerinin arka adı verilen bir uçta eklendiği ve öğelerin silinmesinin öteki adı verilen diğer uçta yapıldığı sıralı bir listedir. Bu ekleme ve silme mekanizması, kuyruğu İlk Giren İlk Çıkar (FIFO) veri yapısı yapar.
Yığın Nedir?
Daha önce belirtildiği gibi, yığın, elemanların üst olarak adlandırılan sadece bir uçtan eklendiği ve çıkarıldığı bir veri yapısıdır. Yığınlar, push ve pop adı verilen yalnızca iki temel işleme izin verir. İtme işlemi yığının üstüne yeni bir öğe ekler. Pop işlemi, bir öğeyi yığının üstünden kaldırır. Yığın zaten doluysa, bir itme işlemi gerçekleştirildiğinde, yığın taşması olarak kabul edilir. Zaten boş olan bir yığın üzerinde bir pop işlemi gerçekleştirilirse, yığın yığını akışı olarak kabul edilir. Bir yığın üzerinde gerçekleştirilebilecek az sayıda işlem nedeniyle, kısıtlı bir veri yapısı olarak kabul edilir. Ayrıca, itme ve pop işlemlerinin tanımlanma şekline göre, yığına en son eklenen öğelerin ilk olarak yığının dışına çıktığı açıktır. Bu nedenle yığın bir LIFO veri yapısı olarak kabul edilir.
Kuyruk nedir?
Bir kuyrukta, öğeler kuyruğun arkasından eklenir ve kuyruğun ön tarafından kaldırılır. İlk eklenen öğeler önce kuyruktan kaldırılacağı için FIFO sırasını korur. Bu öğe ekleme ve çıkarma sırası nedeniyle, kuyruk bir ödeme satırı fikrini temsil eder. Bir kuyruk tarafından desteklenen genel işlemler kuyruk ve kuyruktan arındırma işlemidir. Kuyruk işlemi kuyruğun arkasına bir öğe eklerken, kuyruktan çıkarma işlemi kuyruğun ön tarafından bir öğeyi kaldırır. Genel olarak, kuyrukların bellek kısıtlamalarının yanı sıra kuyruğa eklenebilecek öğe sayısında bir sınırı yoktur..
Stack ve Queue arasındaki fark nedir?
Hem yığınlar hem de sıralar sıralı listeler olsa da, bazı önemli farklılıkları vardır. Yığınlarda, öğe ekleme veya silme yalnızca üst olarak adlandırılan bir uçtan yapılabilirken, kuyruklarda öğe ekleme, arka adı verilen bir uçtan yapılır ve öğeleri silme, ön adı verilen diğer uçtan yapılır. Yığında, yığına en son eklenen öğeler önce yığından kaldırılır. Bu nedenle yığın bir LIFO veri yapısı olarak kabul edilir. Kuyruklarda, ilk eklenen öğeler önce kuyruktan kaldırılır. Bu nedenle kuyruk FIFO veri yapısı olarak kabul edilir.
İlgili Bağlantı:
Yığın ve Yığın Arasındaki Fark