Dersin Kodu | Dersin Adı | Dersin Türü | Yıl | Yarıyıl | AKTS |
---|---|---|---|---|---|
501003522015 | ANALYSIS OF ALGORITHMS | Ders | 3 | 6 | 5,00 |
Lisans
İngilizce
Bu ders, gerçek yaşam problemlerine çözüm tasarlamada kullanılabilecek temel algoritmalar ve algoritma tasarım tekniklerini öğretir. Bu dersin amacı, öğrencilerin (i) bir problem için derste tartışılan metodları kullanarak yeni algoritmalar tasarlayabilmesi,(ii) bir algoritmayı bellek kullanımı ve çalışma süresi gibi çeşitli performans kriterlerine göre analiz edebilmesi ,(iii) çözülecek problem için en uygun algoritmayı seçebilmesi (iv) bir algoritmayı verimli bir şekilde uygulayabilmesi,için bilgi ve yetenekler kazandırmaktır.
Doç. Dr. Hasan BULUT
1 | Algoritma analizi için gerekli matematiksel bilgileri kullanabilme |
2 | Algoritmaların uzamsal ve zamansal karmaşıklığını analiz edebilme |
3 | Algoritmaların uzamsal ve zamansal karmaşıklığını gözönüne alarak değişiklikler yapıp performası artırabilme |
4 | Algoritma tasarım tekniklerini kavrayabilme |
5 | Algoritma tasarım teknikleri kullanarak yeni problemler için algoritmalar tasarlayabilme |
6 | Çözülecek problem için en uygun algoritmik tekniği seçebilme |
7 | Bir problemi alt problemlere bölebilme |
Birinci Öğretim
107 Algoritma ve Programlama I, 112 Algoritma ve Programlama II
C ve Java programlama bilgisi
Temel tanımlar ve veri yapıları. Algoritma analizine giriş. Zaman ve Uzam karmaşıklığı. Standard algoritma tasarım teknikleri: Böl-ve-Ele Geçir metodu, dinamik programlama, Dallan-ve-Sınırla, Geri-adım-atma, İteratif İyileştirme vb. metodlar. Temel algoritmalar; sıralama ve arama algoritmaları, çizge algoritmaları. Karmaşıklık sınıflarına giriş. NP-Zor ve NP-Tam Problemlerine giriş.
Hafta | Konular (Teorik) | Öğretim Yöntem ve Teknikleri | Ön Hazırlık |
---|---|---|---|
1 | Algoritma Analizinin Temelleri | ||
2 | Algoritma Analizinin Temelleri | ||
3 | Kaba Kuvvet | ||
4 | Böl ve fethet | ||
5 | Azalt ve Fethet | ||
6 | Dönüştür ve Fethet | ||
7 | Uzay ve Zaman Değişimi | ||
8 | |||
9 | Dinamik Programlama | ||
10 | Dinamik Programlama | ||
11 | Açgözlü Tekniği | ||
12 | Açgözlü Tekniği | ||
13 | Yinelemeli İyileştirme | ||
14 | Algoritma Gücünün Sınırlamaları | ||
15 | Algoritma Gücünün Sınırlamalarıyla Başa Çıkmak | ||
16 | Final Sınavı |
DERS KİTABI: Introduction to the Design & Analysis of Algorithms , Anany Levitin, Addison Wesley; 2 edition, 2006 ISBN-10: 0321358287 ISBN-13: 978-0321358288 REFERANS KİTAPLAR: Algorithm Design, Jon Kleinberg, Éva Tardos, Addison Wesley; 2006; ISBN-10: 0321372913 ISBN-13:9780321372918 Introduction to Algorithms, Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest, Clifford Stein, The MIT Press; 2nd edition, 2001 ISBN-10: 0262032937 ISBN-13: 978-0262032933
Yarıyıl (Yıl) İçi Etkinlikleri | Adet | Değer |
---|---|---|
Ara Sınav | 1 | 100 |
Toplam | 100 | |
Yarıyıl (Yıl) Sonu Etkinlikleri | Adet | Değer |
Final Sınavı | 1 | 100 |
Toplam | 100 | |
Yarıyıl (Yıl) İçi Etkinlikleri | 40 | |
Yarıyıl (Yıl) Sonu Etkinlikleri | 60 |
Yok
Etkinlikler | Sayısı | Süresi (saat) | Toplam İş Yükü (saat) |
---|---|---|---|
Ara Sınav | 1 | 2 | 2 |
Final Sınavı | 1 | 2 | 2 |
Quiz | 4 | 1 | 4 |
Derse Katılım | 14 | 3 | 42 |
Ödev Problemleri için Bireysel Çalışma | 8 | 4 | 32 |
Ara Sınav İçin Bireysel Çalışma | 1 | 20 | 20 |
Final Sınavı içiin Bireysel Çalışma | 1 | 30 | 30 |
Okuma | 14 | 1 | 14 |
Quiz için Bireysel Çalışma | 2 | 2 | 4 |
Toplam İş Yükü (saat) | 150 |
PÇ 1 | PÇ 2 | PÇ 3 | PÇ 4 | PÇ 5 | PÇ 6 | PÇ 7 | PÇ 8 | PÇ 9 | PÇ 10 | PÇ 11 | |
ÖÇ 1 | 5 | ||||||||||
ÖÇ 2 | |||||||||||
ÖÇ 3 | |||||||||||
ÖÇ 4 | |||||||||||
ÖÇ 5 | |||||||||||
ÖÇ 6 | |||||||||||
ÖÇ 7 |