Veri Yapısı ve Algoritmalar(INF224-B)
Ders Kodu | Dersin Adı | Yarıyıl | Teori | Uygulama | Lab | Kredisi | AKTS |
---|---|---|---|---|---|---|---|
INF224-B | Veri Yapısı ve Algoritmalar | 3 | 3 | 0 | 2 | 4 | 4 |
Ön Koşul | INF103/INF114 |
Derse Kabul Koşulları | INF103/INF114 |
Dersin Dili | Fransızca |
Türü | Zorunlu |
Dersin Düzeyi | Lisans |
Dersi Veren(ler) | Günce Keziban ORMAN korman@gsu.edu.tr (Email) |
Dersin Yardımcıları | Mert Arda ASAR (Email) |
Dersin Amacı | Dersin asıl amacı, öğrenciye çeşitli tip veriler için en uygun veri yapısını seçebilme, bu veri yapılarını algoritmalar içinde kullanabilme, yazılan algoritmaların performans analizlerini yapabilme ve veri yapılarını ve ilgili algoritmaları C dilinde kodlayabilme yetilerini kazandırmaktır. |
İçerik |
1. Hafta: Algoritma analizi. 2. Hafta: Genel veri yapıları (diziler, zincirli liste, kuyruk veri yapısı). 3. Hafta: Ağaç veri yapısı, ikili arama ağacı. 4. Hafta: AVL ağaçları. 5. Hafta: Ağaç erişim algoritmaları. 6. Hafta: Çırpı fonksiyonu ve uygulamaları. 7. Hafta: Çizge veri yapısı. 8. Hafta: Arasınav. 9. Hafta: Çizge algoritmaları (en kısa yol, en küçük kapsar ağaç). 10. Hafta: Sıralama algoritmaları. 11. Hafta: Sıralama algoritmaları. 12. Hafta: Arama algoritmaları. 13. Hafta: Arama algoritmaları. 14. Hafta: Kodlama algoritmaları. |
Dersin Öğrenme Çıktıları |
Bu dersin sonunda öğrenci; • Tüm veri yapıları hakında bilgi sahibi olur. • Elindeki veriye en uygun veri yapısını seçebilir. • Problem çözümlerinde kullandığı algoritmalarda bu veri yapılarını kullanabilir. • Farklı algoritmaların performansını birbirleriyle karşılaştırarak, en iyisini seçebilir. • Veri yapısı ve çeşitli algoritmaları C dilinde kodlayabilir. |
Öğretim Yöntemleri | Anlatım, Tartışma, Gösterip Yaptırma, Örnek Olay, Problem Çözme, İşbirlikli Öğrenme, Proje, Beyin Fırtınası |
Kaynaklar |
1. M.A. Weiss, Data Structures & Algorithm Analysis in C++, 1999, Addison Wesley. 2. A.M. Tanenbaum, Data Structures using C, 1989, Prentice Hall. 3. A. Drozdek, Data Structures and Algorithmss in C++, 2004, Course Technology. 4. R. Sedgewick, Algorithms in C, Parts 1-4: Fundamentals, Data Structures, Sorting, Searching, 1997, Addison-Wesley. 5. Olcay Taner Yıldız, C && Java ile Veri Yapılarına Giriş, Boğaziçi Üniversitesi Yayınevi, 2013. |
Teori Konu Başlıkları
Hafta | Konu Başlıkları |
---|---|
1 | Algoritma analizi. |
2 | Genel veri yapıları (diziler, zincirli liste, kuyruk veri yapısı). |
3 | Ağaç veri yapısı, ikili arama ağacı. |
4 | AVL ağaçları. |
5 | Ağaç erişim algoritmaları. |
6 | Çırpı fonksiyonu ve uygulamaları. |
7 | Çizge veri yapısı. |
8 | Ara Sınav |
9 | Çizge algoritmaları (en kısa yol, en küçük kapsar ağaç). |
10 | Sıralama algoritmaları. |
11 | Sıralama algoritmaları. |
12 | Arama algoritmaları. |
13 | Arama algoritmaları. |
14 | Kodlama algoritmaları. |
Uygulama Konu Başlıkları
Hafta | Konu Başlıkları |
---|
Başarı Notuna Etki Oranları
Sayı | Katkı Payı | |
---|---|---|
Yarıyıl içi çalışmaların başarı notuna katkısı | 4 | 50 |
Yarıyıl sonu çalışmaların başarı notuna katkısı | 1 | 50 |
Toplam | 5 | 100 |
Yarıyıl İçi Çalışmaları
Sayı | Katkı Payı | |
---|---|---|
Ödevler | 3 | 15 |
Sunum | 0 | 0 |
Arasınavlar (Hazırlık Süresi Dahil) | 1 | 35 |
Proje | 0 | 0 |
Laboratuar | 0 | 0 |
Diğer Uygulamalar | 0 | 0 |
Kısa Sınavlar | 0 | 0 |
Dönem Ödevi / Projesi | 0 | 0 |
Portfolyo Çalışmaları | 0 | 0 |
Raporlar | 0 | 0 |
Öğrenme Günlükleri | 0 | 0 |
Bitirme Tezi/Projesi | 0 | 0 |
Seminer | 0 | 0 |
Diğer | 0 | 0 |
Toplam | 4 | 50 |
Numara | Program Yeterlilikleri | Puan | ||||
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
1 | Matematik, fizik ve mühendislik bilimlerine özgü konularda yeterli bilgi birikimi; bu alanlardaki kuramsal ve uygulamalı bilgileri, mühendislik problemlerinin modellenmesi ve çözümünde kullanabilme becerisi. | X | ||||
2 | Karmaşık bilgisayar mühendisliği problemlerini saptama, tanımlama, formüle etme ve çözme becerisi; bu amaçla uygun analiz ve modelleme yöntemlerini seçme ve uygulama becerisi. | X | ||||
3 | Yazılımsal veya donanımsal karmaşık bir sistemi, süreci veya donanımı gerçekçi kısıtlar ve koşullar altında, belirli gereksinimleri karşılayacak şekilde tasarlama becerisi; bu amaçla modern tasarım yöntemlerini uygulama becerisi. | X | ||||
4 | Mühendislik uygulamalarında karşılaşılan karmaşık problemlerin analizi ve çözümü için gerekli olan modern teknik ve araçları geliştirme, seçme ve kullanma becerisi; bilişim teknolojilerini etkin bir şekilde kullanma becerisi. | X | ||||
5 | Analitik düşünce ile bir sistemi, sistem bileşenini ya da süreci analiz etme, modelleme, deney tasarlama ve yapma, veri toplama, çözüm algoritmaları üretebilme, uygulamaya alma ve geliştirme becerileri. | X | ||||
6 | Disiplin içi ve çok disiplinli takımlarda etkin biçimde çalışabilme becerisi; bireysel çalışma becerisi. | X | ||||
7 | Türkçe sözlü ve yazılı etkin iletişim kurma becerisi; en az iki yabancı dil bilgisi; etkin rapor yazma ve yazılı raporları anlama, yazılım ve donanım tasarımını, gerekirse teknik resim metotları kullanarak raporlayabilme, etkin sunum yapabilme becerisi. | X | ||||
8 | Bilgiye erişebilme ve bu amaçla kaynak araştırması yapabilme, veri tabanları ve diğer bilgi kaynaklarını kullanabilme becerisi | X | ||||
9 | Yaşam boyu öğrenmenin gerekliliği bilinci; kendini sürekli yenileme becerisi. | X | ||||
10 | Mesleki etik ilkelerine uygun davranma, mesleki sorumluluk bilinci; mühendislik uygulamalarında kullanılan standartlar hakkında bilgi. | X | ||||
11 | Proje yönetimi, risk yönetimi ve değişiklik yönetimi gibi, iş hayatındaki uygulamalar hakkında bilgi; girişimcilik, yenilikçilik hakkında farkındalık; sürdürülebilir kalkınma hakkında bilgi. | X |
Etkinlikler | Sayı | Süre | Toplam İş Yükü |
---|---|---|---|
Ders Süresi | 14 | 3 | 42 |
Sınıf Dışı Çalışma Süresi | 14 | 1 | 14 |
Ödevler | 2 | 4 | 8 |
Arasınavlar (Hazırlık Süresi Dahil) | 1 | 6 | 6 |
Laboratuar | 2 | 14 | 28 |
Yarıyıl Sonu Sınavı (Hazırlık Süresi Dahil) | 1 | 10 | 10 |
Toplam İş Yükü | 108 | ||
Toplam İş Yükü / 25 | 4.32 | ||
Dersin AKTS Kredisi | 4 |