Veri Yapıları - Bağlı Liste (LinkedList) Bağlı listeler, dizilerden farklı olarak limitsiz eleman saklamaya yarar. Bağlı listenin başlıca temel özelliklerini aşağıdaki ara yüzde olduğu gibi liste sonuna eleman eklemek, herhangi bir sıradaki elemanı silmek, herhangi bir sıradaki elemanı okuyabilmek, herhangi bir indekse eleman eklemek olarak sayabiliriz. Aşağıdaki gibi bir ara yüzle belirttim: public interface ILinkedList<T> { void Add(T item); void Remove(int index); T Get(int index); void Insert(int index, T item); int GetCount(); }xxxxxxxxxx 1 public interface ILinkedList<T>2 {3 void Add(T item);4 void Remove(int index);5 T Get(int index);6 void Insert(int index, T item);7 int GetCount();8 }Bu ara yüzü aşağıdaki gibi Node sınıfını da kullanarak gerçekleştirdim. devamı için tıklayınız...
Veri Yapıları - Yığın (Stack)Veri yapılarındaki temel öğelerden biri de yığınlardır. Yığınları, tıpkı altı kapalı koliler gibi düşünebiliriz. İlk eklediğiniz nesneyi çıkarabilmek için daha sonra eklediğiniz nesnelerin hepsini önce çıkarmanız gerekir. Özetle, ilk giren son çıkar, son giren ilk çıkar. Yığın için gerçekleştirmemiz gereken ara yüz aşağıdaki gibidir. public interface IStack<T> { void Push(T value); T Pop(); }xxxxxxxxxx 1 public interface IStack<T>2 {3 void Push(T value);4 T Pop();5 }Bu arayüzü iki farklı şekilde gerçekleştirebildim. devamı için tıklayınız...
Veri Yapıları - Kuyruk (Queue)Veri yapılarının temel elementlerinden kuyruk (queue) elementini C# ile gerçekleştirmek istiyorum. Kuyruk, kuyruğa yeni bir eleman ekleme ve kuyruktan eleman çıkarma gibi 2 temel işleve sahip ve gerçek hayatta olduğu gibi kuyruğa ilk giren eleman ilk, son giren eleman son çıkmalı. Aşağıdaki gibi genel bir ara yüz (generic interface) yazıp gerçekleştirmeye çalıştım. public interface IQueue<T> { T Dequeue(); void Enqueue(T value); }xxxxxxxxxx 1 public interface IQueue<T>2 {3 T Dequeue();4 void Enqueue(T value);5 }Bu ara yüzü 2 farklı yaklaşımla gerçekleştirebiliriz:devamı için tıklayınız...