Ön Koşulu Olan Ders( ler ) |
BM102, BM103 |
Dili |
tr |
Türü |
Zorunlu |
Seviyesi |
Lisans |
Öğretim Elemanı( ları ) |
Dr.Öğr.Üyesi Çiğdem ACI |
Öğretim Sistemi |
Yüz Yüze |
Önerilen Hususlar |
Yok |
Staj Durumu |
Yok |
Amacı |
Veri yapılarının ve algoritmalarının çalışma zamanı ve bellek gereksinimleri analizinin yapılması, temel sıralama ve arama algoritmalarının incelenmesi, sıralama ve arama algoritmalarının bellek gereksinimi ve çalışma zamanı açısından analizleri, bağlı listeler, yığın, kuyruk, ağaç ve çizge veri yapıları, ve bu veri yapılarının dizi ve işaretçi temelli programlamaları. Veri yapıları ile programlama uygulamaları. |
İçeriği |
"Veri yapıları" ve "veri modelleri" kavramlarının tanımlanması. Algoritmaların çalışma zamanı ve bellek gereksinimi analizinin yapılması. Araya Ekleme Sıralaması, Seçmeli Sıralama, Kabarcık Sıralaması, Birleştirmeli Sıralama, Kümeleme Sıralaması, Hızlı Sıralama algoritmalar ve analizleri. Doğrusal arama, ikili arama ve çırpı araması algoritmaları ve analizleri. Bağlı listeler ve uygulamaları. Yığın ve kuyruk veri yapıları ve uygulamaları. Ağaç ve çizge veri modelleri ve uygulamaları. |
# |
Konular |
Öğretim Yöntem ve Teknikleri |
1 |
Veri yapısı ve veri modeli kavramlarının açıklanması, örnekler verilmesi |
Anlatım, tartışma |
2 |
Program çalışma hızı ve bellek gereksinimi hesaplaması yöntemlerinin örnek programlar ile açıklanması |
Anlatım, tartışma |
3 |
Program çalışma hızı ve bellek gereksinimi hesaplaması yöntemlerinin örnek programlar ile açıklanması |
Anlatım, tartışma |
4 |
Sıralama algoritmaları ve analizi (araya ekleme sıralaması, seçmeli sıralama, kabarcık sıralaması algoritmaları ve karşılaştırılması) |
Anlatım, tartışma |
5 |
Sıralama algoritmaları ve analizi (birleşmeli sıralama, kümeleme sıralaması, hızlı sıralama algoritmaları ve tüm sıralama algoritmalarının karşılaştırılması) |
Anlatım, tartışma |
6 |
Ardışıl Arama ve İkili Arama algoritmaları, analizi ve uygulamaları |
Anlatım, tartışma |
7 |
Ara Sınav |
Ölçme ve Değerlendirme |
8 |
Çırpı arama algoritmaları, analizi, ve uygulamaları |
Anlatım, tartışma |
9 |
Tek ve çift yönlü bağlantılı listeler ve uygulamaları |
Anlatım, tartışma |
10 |
Yığın Veri Yapısı ve uygulamaları |
Anlatım, tartışma |
11 |
Kuyruk Veri Yapısı ve uygulamaları |
Anlatım, tartışma |
12 |
Ağaç Veri Modelinin tanımlanması |
Anlatım, tartışma |
13 |
İkli Ağaç, Bağıntı Ağacı, Kümeleme Ağacı, Kodlama Ağaçları ve uygulamaları |
Anlatım, tartışma |
14 |
Çizge veri modelinin tanımlanması |
Anlatım, tartışma |
15 |
Çizge veri modelinin uygulamaları |
Anlatım, tartışma |
16 |
Son Sınav |
Ölçme ve Değerlendirme |
# |
Malzeme / Kaynak Adı |
Kaynak Hakkında Bilgi |
Referans / Önerilen Kaynak |
1 |
C and and Java ile Veri Yapılarına Giriş
Yazar: Olcay Taner Yıldız
Yayınevi : Boğaziçi Üniversitesi Yayınevi
|
|
T.H. Cormen, C.E. Leiserson, R.L. Rivest, "Introduction to Algorithms", The MIT Press, 1999.
M.A. Weiss, “Data Structures and Problem Solving Using C++”, Addison Wesley, 2003.
|
2 |
T.H. Cormen, C.E. Leiserson, R.L. Rivest, "Introduction to Algorithms", The MIT Press, 1999. |
|
|
3 |
M.A. Weiss, “Data Structures and Problem Solving Using C++”, Addison Wesley, 2003. |
|
|