Tweet

Linked List ( C# )

Seyhanın java için yazmış olduğu bağlı listenin bir örneğini c# için yaptık..

Örnekde basit olarak singly linked lists'den bahsedeceğiz,

Bu bağlı liste türünde tüm elemanlar ilk olarak kendi değerini daha sonra kendinden sonraki elemanın kim olduğunu kısaca link bilgisini tutar.Bu yüzden buna
bağlı liste deniliyor.Elemanlar birbirlerine link ile bağlıdır.Bunu bir örnek ile açıklayalım hemen..[...]

Aşağıda vermiş olduğum sınıfta bilgileri tuttuğumuz liste elemanları,linked list'de ise bağlı olan listemiz mevcut.

CODE:
class Kitap
{
public Kitap(string isim,string yazar)
{
this.isim = isim;
this.yazar = yazar;
}
public string isim;
public string yazar;

//bu kısımda kendisinden sonraki elemanın yani hangi kitap olduğu yer alacak
public Kitap sonrasi;

}
class LinkedList
{
//Listedeki ilk elemanı ve son elemanı belirtelim
public Kitap ilk,son;
public LinkedList()
{
ilk = new Kitap("ilk",");
son = new Kitap("son",");
//Eğer iki elemanınız varsa dolayısı ile ilkten sonraki eleman son eleman olacaktır..

ilk.sonrasi = son;

son.sonrasi = son;
}
}


Tanımlaması

CODE:
LinkedList kitap = new LinkedList();


Aktif Olan Kayıt
CODE:
Kitap aktif = kitaplar.ilk;


Araya eleman ekleme

CODE:
Kitap aktif = kitaplar.ilk;
while(aktif.sonraki != kitaplar.son & aktif.sonrasi.yazar != yeniKitap.yazar)
{

aktif = aktif.sonrasi;
}
yenikitap.sonrasi = aktif.sonrasi;
aktif.sonrasi = yeniKitap

Eleman Sayısı için

Kitap aktif = kitaplar.ilk;
int elemanSayisi = 0;
while (aktif.sonrasi != kitaplar.son)
{

elemanSayisi++;
aktif = aktif.sonrasi;
}

if(elemanSayisi == 0) {//Boş}
else{//Dolu}


Kolay Gelsin..


Oguzz
oguz@thecoders.net
3 Aralik 2007 17:11

İlgili Olabilecek Makaleler


Yorumlar (2)





warmup
9 Ekim 2009 20:14
gayet güzel, fakat attribute ve method isimlerini ingilizce yapsanız sanırım daha iyi olucaktı :)


Oguzz
8 Mart 2010 02:04
Türkçemiz varken neden ingilizce kullanalım.

Ziyaretçi olarak yorum yazamazsınız. Üye olmak için tıklayın Üye iseniz giriş yapın.



MENÜ » FORUM
Menü » Takip et
RSS Facebook Twitter Friendfeed
Sık Kullanılanlar Google Yahoo Live
Menü » Paylaş
E-Posta ile gönder Twitter Facebook Friendfeed
Buzz Stumbleupon Delicious Digg