9. SınıfBilişim Teknolojileri

Yığın ve Kuyruk Veri Yapıları

Bilişim Teknolojileri · 9. Sınıf · Diziler ve Fonksiyonlar

Konu Anlatımı

Yığın ve Kuyruk Veri Yapıları

Yığın ve kuyruk veri yapıları, elemanların hangi sırayla eklenip çıkarılacağını kurala bağlayan iki temel veri yapısıdır. Programlama Temelleri dersinde diziler ve fonksiyonlar konusu işlendikten sonra bu iki yapı, dizilerin çok sınırlı kullanımını daha düzenli hâle getirir.

1. Ne Öğreneceğiz ve Ön Bilgi

Bu konuda yığın ve kuyruk kavramlarını, iki yapı arasındaki çalışma farkını ve bu farkın günlük sistemlerde nerede göründüğünü öğreneceğiz. Bir atölyede üretilen parçaların sevk sırası, bir belge merkezinde işlemlerin sıraya giriş biçimi ve bir programdaki geri alma düğmesi hep bu iki kurala göre çalışır.

Ön bilgi olarak dizide eleman ekleme, okuma ve silme işlemlerini bilmek yeterlidir. Dizi değişkeninin uzunluğunu ve her konumun bir indisle gösterildiğini hatırlamak, yığın ve kuyruğun aslında dizi üzerinde kurulabildiğini anlamayı kolaylaştırır. Fonksiyon kavramı da önemlidir; çünkü ekleme ve çıkarma işlemleri çoğu zaman ayrı fonksiyonlar hâlinde yazılır.

2. Temel Kavramlar ve Sınıflandırma

Veri yapısı, verilerin bellekte nasıl saklanacağını ve üzerlerinde hangi işlemlerin yapılacağını belirleyen düzendir. Yığın, son giren ilk çıkar düzeninde çalışır: yeni eleman üst uca eklenir ve çıkarma da üst uçtan yapılır. Kuyruk ise ilk giren ilk çıkar düzenindedir; yeni eleman son uca eklenir, eleman baş uçtan çıkarılır.

Her iki yapıda da ekleme ve çıkarma yalnızca uç tarafta gerçekleşir. Ortadan eleman eklemek ya da çıkarmak bu yapıların doğasına aykırıdır, çünkü kuyrukta elemanların sırası, yığında ise üstteki öğenin ilk çıkması bozulur.

ÖlçütYığınKuyruk
Çıkarma düzeniSon eklenen ilk çıkarİlk eklenen ilk çıkar
Ekleme ucuÜst uçSon uç
Çıkarma ucuÜst uçBaş uç
Tipik kullanımGeri alma, parantez denetimiBekleme sırası, işlem kuyruğu

Yığında öğe sayısı için üst göstergesi, kuyrukta elemanın çıkacağı yer için baş, yeni elemanın eklendiği yer için son göstergesi kullanılır. Kapasite sınırına ulaşıldığında eklemeye devam edilemez; buna üst taşması denir. Boş bir yapıdan eleman almaya çalışmak ise alt taşmasıdır.

3. Basit Örnek ve Adım Adım Çözüm

Bir ifadede parantezlerin dengeli olup olmadığını yığınla denetleyelim. İfade şöyle yazılmıştır: { [ ( ) ] }. Açılış ve kapanış işaretleri iç içe geçtiği için denetim yalnızca sayımla değil, hangi işaretin hangisine eşleştiği bilgisiyle yapılmalıdır.

  1. Adım 1: Yığını boş kabul et ve okuma göstergesini ilk karaktere getir.
  2. Adım 2: Süslü açılış işaretini gördüğünde yığının üstüne ekle.
  3. Adım 3: Köşeli açılış işaretini gördüğünde yığının üstüne ekle.
  4. Adım 4: Parantez açılış işaretini gördüğünde yığının üstüne ekle.
  5. Adım 5: Kapanış işaretlerinde yığının üstündeki açılış işaretini al.

Üç açılış işareti de üç kapanış işaretiyle eşleştiği için işaretler bittiğinde yığında hiçbir eleman kalmaz. Yığının boş olması denge sağlandığını gösterir. Yığında açılış işareti kalması durumunda ise kapanış eksiktir ve ifade dengeli değildir.

4. İleri Örnek ve Saha Uygulaması

Bir atölyede üretilen parçaların sevk edilmesi düşünülsün. Üretim sırasını bozmamak için ilk üretilen parça ilk sevk edilmelidir, bu yüzden sevk listesi bir kuyrukla tutulur. Buna karşılık bir iş emrindeki geri alma düğmesi, en son yapılan işlemi iptal ettiği için yığınla çalışır. Aynı programda iki yapının birlikte bulunması olağandır.

Saha uygulamasında karar gerektiren durum şudur: üretim hattında bir arıza çıkar ve hat durdurulur. Bekleyen parçaların listesini yığınla tutarsanız, hat yeniden çalıştığında en son üretilen parça ilk sevk edilir ve sevk sırası karışır. Bu yüzden durdurma anında kuyruğun başındaki parçanın numarası ayrıca bir kâğıda yazılmalı, hat yeniden başladığında bu numaradan devam edilmelidir.

5. Karşılaştırma Tablosu ve Denetim

Kontrol noktasıÖlçütKabul ölçüsü
Ekleme sonrası denetimÜst veya son göstergenin güncellenmesiEklenen her eleme bir kez sayılır
Çıkarma öncesi denetimEleman sayısının sıfırdan büyük olmasıBoş yapıdan eleman alınmaz
Kapasite denetimiEleman sayısının sınırdan küçük olmasıSınıra ulaşınca ekleme yapılmaz
Sıra denetimiYığında üstteki, kuyrukta başta duran öğeBeklenen eleman ilk sırada bulunur

Bu denetimler geliştirme sırasında adım adım yapılmalıdır. Önce küçük bir örnek elle izlenmeli, sonra kod yazılmalıdır. Yazılan kodda eleman sayısını tutan değişkenin her ekleme ve çıkarmada güncellenip güncellenmediği kontrol edilmelidir; gösterge atlandığında yapı sessizce bozulur ve hata ancak denetim sırasında anlaşılır.

İkinci denetim çıkarma sırasının doğruluğudur. Yığında çıkarılan değer, dizideki üst gösterge konumundaki değer olmalıdır. Kuyrukta ise baş gösterge her çıkarmadan sonra bir konum ilerletilir. Baş gösterge son uca ulaştığında sıfırlanması, baş taraftaki elemanların boşuna silinmesini önler.

Son bir ayrıntı: dizilerde eleman silme işlemi birinci konumdan yapılıyorsa kuyruk kurulamaz, çünkü her çıkarmada bütün elemanlar bir konum kayar ve kod yavaşlar. Bu durumda kuyruk yerine halka biçiminde bir gösterge çözümü ya da iki ayrı gösterge kullanmak gerekir.

6. Sık Yapılan Hatalar, Özet ve Kendini Dene

Özet: Yığın ve kuyruk, eleman sırasını kurala bağlayan veri yapılarıdır. Yığın son giren ilk çıkar, kuyruk ilk giren ilk çıkar düzeninde çalışır; işlemler hep uçlarda yapılır. Yığın geri alma ve parantez denetiminde, kuyruk bekleyen işlerde kullanılır. Kapasite sınırı üst taşmasına, boş yapıdan almak alt taşmasına yol açar.

Kendini dene:

Yığın ve Kuyruk Veri Yapıları — Sık Sorulan Sorular

Yığın ve Kuyruk Veri Yapıları nedir?

Yığın ve kuyruk veri yapıları, elemanların hangi sırayla eklenip çıkarılacağını kurala bağlayan iki temel veri yapısıdır. Programlama Temelleri dersinde diziler ve fonksiyonlar konusu işlendikten sonra bu iki yapı, dizilerin çok sınırlı kullanımını daha düzenli hâle getirir. Bu konuda yığın ve kuyruk kavramlarını, iki…

Yığın ve Kuyruk Veri Yapıları konusunda ne öğrenilir?

Yığın ve kuyruk veri yapıları sıralamayı kurala bağlar; kuralın dışına çıkılamaz.

Yığın ve Kuyruk Veri Yapıları konusunda sık yapılan hatalar nelerdir?

Göstergeyi güncellememek: Yığına eklenen öğeden sonra üst gösterge ilerletilmezse program yeni öğeyi göremez, bir sonraki çıkarmada eski değeri verir ve hata zor anlaşılır. Boş yapıdan çıkarma denemek: Eleman sayısı sıfırken çıkarma yapılırsa alt taşması oluşur; denetim satırı yazılmazsa program beklenmedik biçimde…

Yığın ve Kuyruk Veri Yapıları için hangi formüller ve kurallar kullanılır?

Yığın LIFO düzeninde çalışır: son eklenen öğe ilk çıkar. · Kuyruk FIFO düzeninde çalışır: ilk eklenen öğe ilk çıkar. · Yığında ekleme ve çıkarma üst uçta, kuyrukta ekleme son uçta ve çıkarma baş uçta yapılır. · Dengeli parantez denetimi, açılış işaretini yığına ekleyip kapanış işaretinde üstteki elemanı çıkarmakla…

Yığın ve Kuyruk Veri Yapıları kazanımları nelerdir?

Yığın ve kuyruk veri yapılarını çalışma düzenleriyle birlikte tanımlar ve karşılaştırır. Bir dizi üzerinde üst, baş ve son göstergelerini kullanarak yığın ve kuyruk kurar. Dengeli parantez denetimini yığınla yürüterek açılış ve kapanış işaretlerini eşleştirir.

Yığın ve Kuyruk Veri Yapıları Kazanımları

Örnek Sorular ve Çözümleri

Örnek Soru 1 kolay

Son giren ilk çıkar düzeniyle çalışan veri yapısının adı nedir?

  1. A) Yığın
  2. B) Kuyruk
  3. C) Bağlı liste
  4. D) Sıralı dizi
Cevabı göster

Doğru cevap: A) Yığın

Bu yapıda ekleme ve çıkarma hep aynı uçta olur; en son eklenen öğe, kendisinden sonra yeni bir şey eklenmediyse ilk çıkar. Bu davranış LIFO olarak adlandırılır. Doğru cevap: Yığın.

Örnek Soru 2 orta

Yazıcı kuyruğunda üç belge sırayla gönderilirse belgeler hangi sırayla basılır?

  1. A) Gönderim sırasına göre
  2. B) Gönderimin ters sırasına göre
  3. C) Sayfa sayısına göre
  4. D) Rastgele bir sırayla
Cevabı göster

Doğru cevap: A) Gönderim sırasına göre

Gönderim sırasına göre kavramı Yığın ve Kuyruk Veri Yapıları konusunun temel bir kavramıdır. Detaylar konu anlatımında verilmiştir.

Örnek Soru 3 zor

Boş bir yığına sırayla A, B ve C eklenip iki eleman çıkarılırsa yığında hangi eleman kalır?

  1. A) B. (secenek)
  2. B) C. (secenek)
  3. C) A. (secenek)
  4. D) Yığın tam (secenek)
Cevabı göster

Doğru cevap: C) A. (secenek)

A... A. C en son eklendiği için ilk, B ikinci sırada çıkar; geriye A kaldığı için yığında yalnızca A bulunur.

Sıradaki adım

Konu anlatımları hesapsız okunur. Quiz, slayt ve deneme için hesap gerekir.

DersTeders ile devam et

Bilişim Teknolojileri için çalışma yolu

  1. OkuKonu anlatımını bu sayfada bitir.
  2. Soru çözÖrnekleri çöz, cevabı açıklamayla karşılaştır.
  3. Quiz ile pekiştirHesapla kendini ölç.

Slaytla adım adım öğren · Tüm dersler · Ana sayfa

Hesap açTüm dersleri keşfet

Konu anlatımları hesapsız okunur; quiz, slayt ve deneme için hesap gerekir.

Bu sayfa Yığın ve Kuyruk Veri Yapıları konusunun anlatımını, kazanımlarını ve örnek sorularını içerir. Konuyla ilgili tüm sorular için testi çöz, diğer konular için DersTeders ana sayfasına geçebilirsin.

Bu konunun öğretmen materyallerini (ders planı, çalışma kâğıdı, çözümlü soru bankası, rubrik) yazdırabilirsin: Yazıcı çıktısı modülünü aç