Bu uygulama Data Structures (Veri Yapıları) dersi için linked list (bağlı liste), queue (kuyruk) ve stack data structers (yığın veri yapıları) kulanılarak geliştirilmiştir.
Microsoft Visual Studio Community 2017 - Version 15.6.2 - C#
3 katlı bir otoparkın her katına eklenen 15’er tane arabanın, sadece zemin kattan birer birer çıkmasına izin veren otopark projesi.
- Bağlı liste
- Dairesel kuyruk
- Yığın
- Araba Sınıfı: Arabanın renk özelliğini tutar.
- IQueue Arayüzü:
- void Insert(Araba a);
- Araba Remove();
- Araba Peek();
- Boolean IsEmpty();
- IStack Arayüzü:
- void Push(Araba a);
- Araba Pop();
- Araba Peek();
- Boolean IsEmpty();
- int Top { get; set; }
- LinkedListADT Soyut Sınıfı:
- Node Head;
- Node Last;
- int Size = 0;
- abstract void InsertFirst(Araba a);
- abstract Node Delete();
- Node Sınıfı: Düğümün özelliklerini tutar.
- BodrumKat Sınıfı: Bodrum kattaki arabaların tutulduğu yığın.
- void Push(Araba a) : Yığına araba ekler.
- Araba Pop(): Yığından araba çıkarır.
- Araba Peek(): Yığındaki ilk elemanı döndürür.
- Boolean IsEmpty(): Yığın boş mu diye kontrol eder.
- int Top { get; set; }: Yığının en üstündeki eleman.
- string BKListele() : Yığındaki arabaları listeler.
- ZeminKat Sınıfı: Zemin kattaki arabaların tutulduğu kuyruk.
- void Insert(Araba a): Kuyruğa araba ekler.
- Araba Remove(); Kuyruktan araba çıkarır.
- Araba Peek(); Kuyruktaki ilk elemanı döndürür.
- Boolean IsEmpty(): Kuyruk boş mu diye kontrol eder.
- string ZKListele() : Kuyruktaki arabaları listeler.
- double Test() : bilgisayarın 5 saniyede ortalama kaç adet otopark problemi çözdüğünü döndürür.
- UskKat Sınıfı: Üst kattaki arabaların tutulduğu bağlı liste.
- abstract void InsertFirst(Araba a) : Listenin başına araba ekler.
- abstract Node Delete(): Listeden araba çıkarır.
- string UKListele() : Listedeki arabaları listeler.