Merhaba Değerli Arkadaşlar sabahın bu erken saatlerinde bir zevk haline getirdiğim denize karşı pencerenin karşısında çay yudumlarken bir başka zevkim olan yazma bir şeyler anlatma hissi daha tatlı gelince hemen bilgisayarımı aldım ve çayımıda yudumlarken yazmaya koyuldum.

Bu yazımda sizlere Dün Anlattığım veri yapılarının diğer bir önemli konusu olan Queue (Kuyruk) veri yapısını elimden geldiği kadarıyla en önemli arkadaşım olan sıcak çayımı yudumlarken anlatacağım ama önce dün verdiğim gibi bugünde veri yapılarının en önemli yapısı derken acaba veri yapıları ne demektir diyerek başlayalım yazmaya…

Veri yapıları,Verilerin bellekte tutulma biçimleriyle beraber bellekten alınırken işlenme biçimleri,yöntemleri yada yordamlarıdır diyebiliriz.Bunun içindir ki dün kü yazımda da belirttim bir Value nun Type ı en basitinden bir veri yapısıdır çünkü value nun bellekte nasıl tutulacağını kaç byte halinde saklanacağını karar verme aşamasıdır.Bu kadar kısa hatırlatmadan sonra dönelim asıl konumuza ve Queue yi anlatmaya başlayalım.

Queue (kuyruk) veri yapısı adının türkçe anlamından da anlaşılacağı üzere veriler burda kuyruk halinde tutulur.Yani kuyruğa eleman eklenirken en sonuna yani kuyruğa eleman eklenir ve bu işleme Enqueue denir ayrica kuyruktan bir eleman çekilirkende yine en son eklenen eleman ilk olarak çekilir ki bu olayada dequeue denir.Bu veri yapısının terminology sinde FIFO (Firs In First Out ) mantığı vardır yani ilk giren eleman ilk çıkar bununda tersi son giren eleman son çıkar ancak dünkü Stack da bu durumun tersi yaşanmaktaydı yani Son Giren İlk çıkar anlayışı vardı ( LIFO ).

Stack veri yapısında da olduğu gibi bu veri yapısında da sizlere amacım olan .Net Framework un Collections Kütüphanesinde var olan Queue sınıfından anlatacağım tabi Queue sınıfıyla beraber yine Stack sınıfındada olduğu gibi bir çok metot veya java tabiriyle yordam bulunmaktadır.Bunları ayrıntılı anlatmayacağım anlamadığınız metot varsa metotu yazıp üstüne sağ tıkladıktan sonra gelen menude Go To Definition sekmesine tıklayıp ordan açıklamalarını öğrenebilirsiniz burdaki amacım Tembellik yapıp anlatmaktansa sizlere ısrarla Visual Studio nun güzelliklerini ve kolaylıklarını effektif bir şekilde kullanmanızı teşvik etmektir yoksa Sıcak Çayım soğusada Tüpün üzerinde ki demliğim soğumaz :).Şimdi Queue sınıfının metotlarının neler olduğunu görelim.

  • Enqueue
  • Dequeue
  • Clear
  • Count
  • CopyTo
  • Clone
  • Contains
  • GetEnumeratorBu metotlardan bazılarını görmek üzere sizleri hemen yazdığım uygulamaya bağlayayım çünkü az sonra okulum başlayacak ve önlüğümü giyip okuluma gitmem lazım 🙂

using System;
using System.Collections; // Queue sınıfı bu isim alanında bulunur.
class Sira_Ornek1
{

public static void Main()
{
// Queue sınıfından bir nesne oluşturalım:
Queue sira = new Queue();

// Nesnemize Enqueue metodu ile deÄŸerler girelim:
sira.Enqueue(“mehmet”);
sira.Enqueue(“salih”);
sira.Enqueue(“deveci”);
sira.Enqueue(“kuheylan”);
// sira isimli nesnemizin eleman sayısı:
Console.WriteLine(“\n sira nesmemizin eleman sayısı: ” + sira.Count);
// sira isimli nesnemizin elemanları:
Console.WriteLine(“\n sıra nesmemizin elemanları: “);
DegerleriYaz(sira);
//sira isimli nesmemizden bir eleman alalım:
string eleman = (string)sira.Dequeue();
Console.WriteLine(” \n Sıramizin başından ÅŸunu aldık: ” + eleman);
//şimdi ise siranin en başındaki nesneyi öğrenelim.
// Ama onu ıiradan çıkartmayacağız:
eleman = (string)sira.Peek();
Console.WriteLine(” \n Sıramızın başındaki eleman ” + eleman);

Console.ReadLine();
}
public static void DegerleriYaz(IEnumerable kolleksiyon)
{
System.Collections.IEnumerator Enum = kolleksiyon.GetEnumerator();

while (Enum.MoveNext())
Console.Write(“\t{0}”, Enum.Current);

Console.WriteLine();
}
}

İŞTE KODUN ÇIKTISI…

 

Oracle Exadata SQL Server Goldengate Weblogic EBS ve Linux konusunda aşağıdaki konularda 7×24 Uzman Danışmanlara yada Eğitimlere mi
İhtiyacınız var mehmet.deveci@gridgroup.com.tr adresine mail atarak Bizimle iletişime geçebilirsiniz.

– Oracle Veritabanı Danışmanlığı
– Oracle Veritabanı Bakım ve Destek
– Exadata Danışmanlığı
– Exadata Bakım ve Destek
– SQL Server Veritabanı Danışmanlığı
– SQL Server Veritabanı Bakım ve Destek
– Goldengate Danışmanlığı
– Goldengate Bakım ve Destek
– Linux Danışmanlığı
– Linux Bakım ve Destek
– Oracle EBS Danışmanlığı
– Oracle EBS Bakım ve Destek
– Weblogic Danışmanlığı
– Weblogic Bakım ve Destek
– Oracle Veritabanı Eğitimleri
– Oracle VM Server Danışmanlığı
– Oracle VM Server Bakım ve Destek
– Oracle EPPM Danışmanlığı
– Oracle EPPM Bakım ve Destek
– Oracle Primavera Danışmanlığı
– Oracle Primavera Bakım ve Destek
– Oracle Eğitimleri
– SQL Server Eğitimleri
– Goldengate Eğitimleri
– Exadata Eğitimleri
– Linux Eğitimleri
– Oracle EBS Eğitimleri
– Oracle VM Server Eğitimleri
– Weblogic Eğitimleri
– Oracle EPPM Eğitimleri
– Oracle Primavera Eğitimleri

Bir Cevap Yazın

Aşağıya bilgilerinizi girin veya oturum açmak için bir simgeye tıklayın:

WordPress.com Logosu

WordPress.com hesabınızı kullanarak yorum yapıyorsunuz. Çıkış  Yap /  Değiştir )

Google+ fotoğrafı

Google+ hesabınızı kullanarak yorum yapıyorsunuz. Çıkış  Yap /  Değiştir )

Twitter resmi

Twitter hesabınızı kullanarak yorum yapıyorsunuz. Çıkış  Yap /  Değiştir )

Facebook fotoğrafı

Facebook hesabınızı kullanarak yorum yapıyorsunuz. Çıkış  Yap /  Değiştir )

Connecting to %s