Ders Adı Kodu Yarıyıl T+U Saat Kredi AKTS
Advanced Algorıthm Desıgn and Data Structures SWE 510 0 3 + 0 3 6
Ön Koşul Dersleri
Önerilen Seçmeli Dersler
Dersin Dili İngilizce
Dersin Seviyesi YUKSEK_LISANS
Dersin Türü Seçmeli
Dersin Koordinatörü Prof.Dr. DEVRİM AKGÜN
Dersi Verenler
Dersin Yardımcıları
Dersin Kategorisi Diğer
Dersin Amacı

The aim of this course is to introduce a collection of algorithms for complex programming challenges in data analysis, machine learning, and graph computing. 

Dersin İçeriği

Introducing data structures. Improving priority queues: d-way heaps. Treaps: Using randomization to balance binary search trees. Bloom filters: Reducing the memory for tracking content. Disjoint sets: Sub-linear time processing. Efficient string search. Use case: LRU cache. Nearest neighbors search. K-d trees: Multidimensional data indexing. Similarity Search Trees. Applications of nearest neighbor search. Clustering

# Ders Öğrenme Çıktıları Öğretim Yöntemleri Ölçme Yöntemleri
1 To design your own data structures Anlatım, Soru-Cevap, Gezi / Gözlem, Gözlem,
2 To understand and apply search algorithms Anlatım, Soru-Cevap, Gezi / Gözlem, Gözlem,
3 To understand multidimensional queries Anlatım, Soru-Cevap, Gezi / Gözlem, Gözlem,
Hafta Ders Konuları Ön Hazırlık
1 Veri yapılarına giriş
2 Öncelik kuyurukları: d-way yığınları
3 Treaps: İkili arama ağaçlarını dengelemek için rasgeleleştirmeyi kullanma
4 Bloom filtreleri: İçeriği izlemek için belleğin azaltılması
5 Ayrık kümeler: Alt doğrusal zaman işleme
6 Verimli string arama
7 Kullanım örneği: LRU önbelleği
8 En yakın komşu araması
9 K-d ağaçları: Çok boyutlu veri indeksleme
10 Benzerlik Arama Ağaçları
11 En yakın komşu arama uygulamaları
12 Kümeleme
13 Paralel kümeleme: MapReduce ve canopy kümeleme
14 Grafikler: Minimum mesafeli yolları bulma
Kaynaklar
Ders Notu
Ders Kaynakları

La Rocca, Marcello. Advanced Algorithms and Data Structures. Simon and Schuster, 2021.

Sıra Program Çıktıları Katkı Düzeyi
1 2 3 4 5
1 Yaşadığı toplumun bilgi toplumu olmasına katkıda bulunmak, toplumsal, bilimsel, kültürel ve etik sorunlara çözüm sunmak amaçlarıyla alanındaki bilimsel, teknolojik, sosyal veya kültürel ilerlemeleri ulusal ve uluslararası bilimsel ortamlarda (toplantılarda) tanıtır.
2 Alanında bilimsel araştırma yaparak bilgiye genişlemesine ve derinlemesine ulaşır, alanında güncel teknik ve yöntemler ile bunların kısıtları hakkında kapsamlı bilgiye sahip olup ve elde ettiği bilgiyi değerlendirir, yorumlar ve uygular.
3 Alanı ile ilgili problemleri tanımlar ve formüle eder, yeni ve/veya özgün fikir ve yöntemler geliştirir; karmaşık sistem veya süreçleri tasarlar ve tasarımlarında yenilikçi/alternatif çözümler ile gelişmekte olan yenilikçi yöntemleri kullanır.
4 Kuramsal, deneysel ve modelleme esaslı araştırmaları tasarlar ve uygular, belirsiz, sınırlı ya da eksik verileri bilimsel yöntemlerle tamamlar; verilerin toplanması, yorumlanması, duyurulması aşamalarında ve mesleki tüm etkinliklerde toplumsal, bilimsel ve etik değerleri gözetir.
5 Alanındaki uygulamaların sosyal, çevresel, sağlık, güvenlik, hukuki boyutlarını ve iş hayatı uygulamalarını bilir ve bunların getirdiği kısıtların farkındadır. Disiplin içi ve çok disiplinli takımlarda etkin bir biçimde birlikte ve ya bağımsız çalışabilir ve sorumluluk alır.
6 Her ölçekte yazılım sistemi için proje planlaması; zaman, kaynak, bütçe ve risk yönetimi yapar, alternatif çözüm yolları belirler.
Değerlendirme Sistemi
Yarıyıl Çalışmaları Katkı Oranı
Toplam 0
Toplam 0
AKTS - İş Yükü Etkinlik Sayı Süre (Saat) Toplam İş Yükü (Saat)
Ders Süresi (Sınav haftası dahildir: 16x toplam ders saati) 16 5 80
Proje / Tasarım 1 8 8
Sınıf Dışı Ders Çalışma Süresi(Ön çalışma, pekiştirme) 16 3 48
Final 1 8 8
Ödev 2 3 6
Toplam İş Yükü 150
Toplam İş Yükü / 25 (Saat) 6
Dersin AKTS Kredisi 6