Algoritma ve İleri Bilgisayar Programlama II(MAT232)
Ders Kodu | Dersin Adı | Yarıyıl | Teori | Uygulama | Lab | Kredisi | AKTS |
---|---|---|---|---|---|---|---|
MAT232 | Algoritma ve İleri Bilgisayar Programlama II | 4 | 3 | 0 | 0 | 3 | 5 |
Ön Koşul | |
Derse Kabul Koşulları |
Dersin Dili | Fransızca |
Türü | Zorunlu |
Dersin Düzeyi | Lisans |
Dersi Veren(ler) | N. Sultan TURHAN sturhan@gsu.edu.tr (Email) |
Dersin Yardımcıları | |
Dersin Amacı | Bu dersin amacı öğrencilerin programlama yeteneklerini temel algoritmaların, gerçeklemelerinin ve hesapsal problemlere uygulamalarının incelenmesi yoluyla geliştirmektir. |
İçerik |
1. Nesneye Yönelik Programlama 1.1. Class, Instance 1.2. Base class, sub class, super class 1.3. Statik fonksiyon, alan, sınıf 1.4. Abstract fonksiyon, sınıf 1.5. Referans davranışı, Değer davranışı, sığ/derin kopyalama 2. Karakter Dizisi Algoritmaları 2.1. KArakter dizilerinde arama 2.2. En uzun ortak alt dizi 3.1..Özyineleme 3.2. Stack 3.3. Depth First Search (DFS) Derinlik öncelikli gezinme/arama 4.1. Queue 4.2. Beadth First Search (BFS) Genişlik öncelikli gezinme/arama 5.1. Ağaçlar 5.1.1 Ağaçların inşası 5.1.2. Ağaçlarda arama/gezinme 6. Çizgeler 6.1. Çizgelerin İnşası 6.2. Çizgelerde arama/gezinme 6.3. Çizge Algoritmaları (Shortest-path, All pairs shortest path, Djikstra's algorithm) |
Dersin Öğrenme Çıktıları |
--bir problem verildiğinde, öğrenciler problemin mantıksal bileşenlerini ve bunların arasındaki ilişkileri ayırt edebilecek ve her biri için hangi algoritmaları kullanabileceğini belirleyebilecek. --bir algoritma verildiğinde, öğrenciler bunun performansını ve karakteristiklerini aynı türden diğer algoritmalar ile karşılaştırabiliyor olacak. --bir kaynak kodu verildiğinde, öğrenciler bunun içinde gerçeklenmiş olan veri yapılarını ve algoritmaları ayırt edip, belirleyebilecek. |
Öğretim Yöntemleri | teorik ders, ödev |
Kaynaklar |
The Art of Computer Programming, Addison-Wesley, Donald Knuth Algorithms, 4th Ed. Robert Sedgewick |
Teori Konu Başlıkları
Hafta | Konu Başlıkları |
---|---|
1 | Karakter Dizisi Algoritmaları (karakter dizisinde arama,en uzun ortak altdizi) |
2 | Karakter Dizisi Algoritmaları (edit mesafesi: Levenstein Distance) |
3 | Nesneye Yönelik Programlama (Class, Instance, Base class, sub class, super class) |
4 | Nesneye Yönelik Programlama (Statik fonksiyon/alan/sınıf, Abstract fonksiyon/sınıf) |
5 | Referans davranışı, değer davranışı, sığ/derin kopyalama (shallow/deep copy) |
6 | 1.Arasınav |
7 | Ağaçlar, Ağaçların Nesneler ile inşası |
8 | Ağaçlarda arama/gezinme |
9 | Çizgeler, çizgelerin nesneler ile inşası |
10 | Çizgelerde döngü arama |
11 | 2. Arasınav |
12 | Çizgelerin matris temsili, matris ve nesneler şeklinde temsiller arasında dönüşüm |
13 | Çizgelerde arama/gezinme |
14 | Çizge algoritmaları (shortest path, all pairs shortest path, Djikstra's algorithm) |
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ı | 2 | 40 |
Yarıyıl sonu çalışmaların başarı notuna katkısı | 1 | 60 |
Toplam | 3 | 100 |
Yarıyıl İçi Çalışmaları
Sayı | Katkı Payı | |
---|---|---|
Ödevler | 0 | 0 |
Sunum | 0 | 0 |
Arasınavlar (Hazırlık Süresi Dahil) | 2 | 40 |
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 | 2 | 40 |
Numara | Program Yeterlilikleri | Puan | ||||
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 |
Etkinlikler | Sayı | Süre | Toplam İş Yükü |
---|---|---|---|
Ders Süresi | 14 | 3 | 42 |
Sınıf Dışı Çalışma Süresi | 14 | 3 | 42 |
Ödevler | 14 | 1 | 14 |
Arasınavlar (Hazırlık Süresi Dahil) | 1 | 10 | 10 |
Yarıyıl Sonu Sınavı (Hazırlık Süresi Dahil) | 1 | 20 | 20 |
Toplam İş Yükü | 128 | ||
Toplam İş Yükü / 25 | 5,12 | ||
Dersin AKTS Kredisi | 5 |