Basit Veri Yapıları

Yazar: Unknown Tarih: 13:53 Kategori: Yorum: Yorum Yap
Basit veri tiplerinden bahsetmiştik.Şimdi de bilgisayar programlamasında kullanılan basit veri yapılarından bahsedelim.Bunlar;

  • Arrays
  • List
  • Stack/Queues
  • Trees
  • Graphs


Bu yazıda ilk üç yapıya değineceğiz.

#Arrays(Diziler)
Dizilere eleman eklerken indis numarasını net belirtmek zorundayız.
Örn: diziadi[5]=5; gibi.
Bu sayede belirttiğimiz indis numarasındaki değeri atamış oluruz.

Artıları +
Dizi elemanlarına hızlı erişim izni vardır.
Matematiksel matrisler gibi işlemlerde dizi haritası kesin sonuçlar döndürür.
Eksileri -
Diziler tanımlanırken uzunluğu net belirtilmelidir.Daha sonradan değiştirilemez.Birçok verinin miktarıda bilinmeyebilir bu yüzden de olumsuz bir tarafıdır.


#List
List'e eleman eklediğimizde eklediğimiz elemanlar dizilerin aksine en sona yerleştirilir.

Artıları +
Dizinin aksine List'in uzunluğu değiştirilebilir.
Eksileri -
Dizilere oranla erişim ve eleman ekleme yavaştır.
Bazı dillerde geçerli olmamakla birlikte yukarıdaki örnekte verdiğimiz gibi dizi haritası gibi kesin sonuçlar döndürmez.


#Stack/Queues




                    Stack                                           Queues


Evet resimde görüldüğü üzere stack ve queues'te eleman ekleme ve alma işlemleri bu şekilde gerçekleşmekte.Peki bunlar ne gibi yerlerde kullanılır.Örnekleyelim hemen

#Stack

Stack için konuşmak gerekirse varsayalım ki web tarayıcınız açık ve www.google.com'dasınız.
Sizin internet geçmişinizde şu şekildeymiş gibi düşünelim.

Şuanda açık olan : www.google.com
0: www.facebook.com
1: www.twitter.com
2: www.milliyet.com.tr

Başka bir siteye girdiğiniz zaman www.google.com push edilerek var olan verilerin en üstüne yerleşecektir.

0: www.google.com
1: www.facebook.com
2: www.twitter.com
3: www.milliyet.com.tr

Eğer ki tarayıcınızdan geri butonuna tıklarsanız.Bu seferde en üstteki veriyi alarak pop etmiş olacaktır.
Hafızada ki görünüm tekrar bu hale dönecektir.

0: www.facebook.com
1: www.twitter.com
2: www.milliyet.com.tr


#Queues

Elimizde var olan bu şekilde bir liste olsun diyelim.

0: Cem Yılmaz
1: Yılmaz Erdoğan
2: Ata Demirer

Enqueue ederek bir isim eklediğimizde yeni durum bu şekilde olacaktır.

0: Cem Yılmaz
1: Yılmaz Erdoğan
2: Ata Demirer
3: Atalay Demirci

Fakat dequeue edersek en üstteki değer alınacak ve son durum aşağıdaki gibi olacaktır.

0: Yılmaz Erdoğan
1: Ata Demirer
2: Atalay Demirci





Paylaş: Facebook Twitter Google Plus Pinterest Tumblr

Hiç yorum yok:

Yorum Gönder