Matematik Lisans Programı

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. Nesne yönelimli programlamaya giriş – Temel Kavramlar
2. Ağaçlar ve ağaçlarda gezinme
3. AVL Ağaçları
4. Splay Ağaçları
5. Max ve Min Yığıt Ağaçları
6. Çok Yollu Ağaçlar (MultiWays Tree)
7. Çizgeler ve Dolaşma Algoritmaları
8. En küçük yol ağacı (Minimum Spanning Tree)
9. Çizge algoritmaları (shortest path, all pairs shortest path, Djikstra's algorithm)
10. Çizgelerin renklendirilmesi, matris temsili, matris ve nesneler şeklinde temsiller arasında dönüşüm
11. Karakter Dizisi Algoritmaları (karakter dizisinde arama,en uzun ortak altdizi)
12. Referans davranışı, değer davranışı, sığ/derin kopyalama (shallow/deep copy)
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, sunum
Kaynaklar The Art of Computer Programming, Addison-Wesley, Donald Knuth Algorithms, 4th Ed. Robert Sedgewick

Lafore, R., Broder, A., & Canning, J. (2022). Data Structures and Algorithms in Python. Pearson Education, Limited.

Agarwal, B., & Baka, B. (2018). Hands-On Data Structures and Algorithms with Python: Write complex and powerful code using the latest features of Python 3.7. Packt Publishing Ltd.

www.geeksforgeeks.org
Ders İçeriğini Yazdır
Teori Konu Başlıkları
Hafta Konu Başlıkları
1 Nesne yönelimli programlamaya giriş – Temel Kavramlar
2 Ağaçlar ve ağaçlarda gezinme
3 AVL Ağaçları
4 Splay Ağaçları
5 Max ve Min Yığıt Ağaçları
6 Çok Yollu Ağaçlar (MultiWays Tree)
7 Bütün B Ağaçları
8 Ara Sınav
9 Çizgeler ve Dolaşma Algoritmaları
10 En küçük yol ağacı (Minimum Spanning Tree)
11 Çizge algoritmaları (shortest path, all pairs shortest path, Djikstra's algorithm)
12 Karakter Dizisi Algoritmaları (karakter dizisinde arama,en uzun ortak altdizi)
13 Çizgelerin renklendirilmesi, matris temsili, matris ve nesneler şeklinde temsiller arasında dönüşüm
14 Referans davranışı, değer davranışı, sığ/derin kopyalama (shallow/deep copy)
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ı 7 65
Yarıyıl sonu çalışmaların başarı notuna katkısı 1 35
Toplam 8 100
Yarıyıl İçi Çalışmaları
  Sayı Katkı Payı
Ödevler 5 15
Sunum 0 0
Arasınavlar (Hazırlık Süresi Dahil) 1 25
Proje 1 25
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 7 65
Numara Program Yeterlilikleri Puan
1 2 3 4 5
1 Çıkarım yaparak muhakeme yapmanın ilkelerini anlar; ürettiği ya da karşılaştığı matematiksel ifadenin doğruluğunu ve uygunluğunu sistematik şekilde sorgulayabilir;
2 Temel matematik netice ve kavramlarını doğru şekilde bilir ve kullanır; X
3 Sık kullanılan hesap tekniklerine ve algoritmalara hakimdir; bunları hayata geçirmek için iyi bir hesap becerisine sahiptir; bir problemin çözümü için bildiği araçlar arasından ilgili aleti tespit edip kullanabilir ve bu aletlere sahip olup olmadığını muhakeme edebilir; X
4 Matematiksel fikirlerini yapılandırarak hem yazılı hem de sözlü ifade edebilir; X
5 Bildiği matematiksel kavram ve neticeler arasındaki bağlantıları idrak eder, matematik nesnelerinin temsil biçimlerinin (şekiller, formüller, ifadeler, tahminler, örnek kümeleri , ...) birinden diğerine geçiş yapabilir; X
6 ​Rehber gözetiminde özerk bir öğrenme tecrübesi geçirmiş ve karmaşık bir problemin çözümünün anlaşılması için stratejiler geliştirmiştir​; X
7 Bilgisayar biliminin teori ve uygulamaları hakkında, bir programlama dili öğrenmeye devam etmeye yetecek temellere sahiptir; X
8 Matematik modellerinin uygunluğunu ve matematik aletlerinin doğa bilimlerinde ve iş dünyasında kullanımını sorgulamıştır; matematik kavramlarının tarihi evriminin farkındadır; X
9 Bir akademik serbestlik atmosferi içinde matematik içi veya dışı bir konuya adım atma fırsatına sahip olmuştur, eğitimde yolunu kendi başına çizmeyi ve sorumluluk almayı öğrenmiştir; X
10 Yabancı bir ülkede okumak ve çalışmaya yetecek seviyede fransızcaya ve başka bir yabancı dile hakimdir. X
Etkinlikler Sayı Süre Toplam İş Yükü
Ders Süresi 13 3 39
Sınıf Dışı Çalışma Süresi 14 2 28
Ödevler 5 2 10
Sunum 0 0 0
Arasınavlar (Hazırlık Süresi Dahil) 1 5 5
Proje 1 10 10
Laboratuar 0 0 0
Diğer Uygulamalar 0 0 0
Yarıyıl Sonu Sınavı (Hazırlık Süresi Dahil) 0 0 0
Kısa Sınavlar 0 0 0
Dönem Ödevi / Projesi 0 0 0
Portfolyo Çalışmaları 0 0 0
Raporlar 0 0 0
Öğrenme Günlükleri 0 0 0
Bitirme Tezi/Projesi 0 0 0
Seminer 0 0 0
Diğer 0 0 0
Toplam İş Yükü 92
Toplam İş Yükü / 25 3.68
Dersin AKTS Kredisi 4
Scroll to Top