defter*
defter / katalog / CS 502

CS 502 Algorithms II

CS 502 is the graduate continuation of the algorithms sequence, where the focus shifts from "can you code a sort" to proving correctness, bounding resources tightly, and recognizing when a new problem reduces to one you've already solved. Most of the term lives on graphs, shortest paths, spanning trees, max-flow, but you also spend serious time on amortized analysis of Fibonacci heaps and disjoint sets, plus string matching, FFT, and approximation schemes for NP-hard problems. Assessment is two midterms, a final, and three projects, with the projects pushing you to actually implement and reason about the trickier data structures. It's the backbone course that the rest of theoretical CS (complexity, cryptography, networks, ML theory) leans on.

Kredi 3 ECTS 5 Fakülte Mühendislik Fakültesi Bölüm Bilgisayar Mühendisliği Koordinatör Cevdet Aykanat

CS 502 zor mu?

Son 11 dönemde dersin ortalaması 3,06 (195 öğrencinin notu, 4,00 üzerinden), yani sınıf ortalaması B civarında. Zorluk hocaya ve şubeye göre değişir; ölçülebilir olan bu sayı. Diğer derslerle karşılaştır →

CS 502 dersinde kaç midterm var, ağırlıkları ne?

İzlencede 1 midterm var, ağırlığı %40. Final %30. Kalan %30 dersin öteki kalemlerinde. Tam dağılım aşağıda.

CS 502 dersinin ön koşulu var mı?

Bilkent kataloğunda bu ders için ön koşul yazılı değil.

CS 502 dersinde hangi kitap okunuyor?

İzlencede zorunlu kitap: Introduction to Algorithms, T.H.Cormen, C.E.Leiserson and R.L. Rivest, 1994, MIT Press & McGraw-Hill. İzlence toplam 2 kaynak sayıyor.

CS 502 kaç kredi?

3 Bilkent kredisi, 5 AKTS.

Haftalık müfredat 14 hafta

Hafta 114–20 Eyl
Veri yapılarını augment etme teknikleri
Augmenting Data Structures: augmenting red-black trees, dynamic order statistics, interval trees.
red-black treedynamic order statisticsinterval treeaugmentation
Hafta 221–27 Eyl
İleri priority queue implementation'ları
Advanced priority queue implementations: mergeable-heap operations, binomial heaps, fibonacci heaps, runtime analysis using potential method of analysis
binomial heapFibonacci heapmergeable-heap operationspotential method
Hafta 328 Eyl – 4 Eki
Disjoint Set'lerin Linked List Gösterimi
Data structures for disjoint sets: linked list representation, analysis of weighted union heuristic
disjoint setslinked listweighted union heuristic
Hafta 45–11 Eki
Disjoint Set Forest ve Path Compression
Data structures for disjoint sets: disjoint set forests, analysis of union-by-rank with path compression.
disjoint set forestsunion-by-rankpath compressionanalysis
Hafta 512–18 Eki
Graph, tree ve breadth-first search
Graphs and trees: definition, representation and notation. Breadth-First search: correctness of BFS, Breadth first trees
graphtreeBFSbreadth-first tree
Hafta 619–25 Eki
Depth First Search ve kenar sınıflandırması
Depth First search: timestamping vertices, parenthesis theorem, white-path theorem, edge classification.
Depth First Searchtimestampingparenthesis theoremwhite-path theorem
Hafta 726 Eki – 1 Kas
DAG'lerde topological sort algoritmaları
Topological sort of dags: DFS-based algorithm, proof of correctness, Kahn's algorithm
topological sortDAGDFSKahn's algorithm
Hafta 82–8 Kas
DFS ile strongly connected components
Strongly connected components, use of DFS, proof of correctness, component graph
strongly connected componentsDFSproof of correctnesscomponent graph
Hafta 99–15 Kas
Minimum spanning tree ve greedy algoritmalar
Minimum Spanning Tree (MST): generic MST, proof of correctness, two famous greedy algorithms: Kruskal’s and Prim. Fast implementations of Kruskal's and Prim algorithms.
minimum spanning treeKruskalPrimgreedy algorithm
Hafta 1016–22 Kas
Tek kaynaklı en kısa yollar
Single-Source Shortest Paths (SSSP): shortest paths and relaxation, SSSP on dags, Dijkstra’s algorithm for positive edge weigths, Bellman Ford algorithm for general case. How to use Belmann Ford algorithm for a system of difference constraints for solving the feasibility problem on a system of difference constraints.
SSSPDijkstraBellman-Forddifference constraints
Hafta 1123–29 Kas
Tüm çiftler için en kısa yollar (APSP)
All-pairs shortest paths (APSP) - two DP formulations leading to matrix multiplication and Floyd-Warshall algorithms.
all-pairs shortest pathsdynamic programmingmatrix multiplicationFloyd-Warshall
Hafta 1230 Kas – 6 Ara
Tüm çiftler için en kısa yollar
APSPs: transitive closure of a directed graph, Johnson’s algorithm for sparse graphs.
APSPtransitive closuredirected graphJohnson's algorithm
Hafta 137–13 Ara
Maximum flow: Ford-Fulkerson ve Edmonds-Karp
Maximum Flows: flow networks, Ford-Fulkerson method, residual networks, augmenting paths, max-flow mincut theorem, Edmonds-Karp algorithm
flow networkFord-Fulkersonaugmenting pathEdmonds-Karp
Hafta 1414–20 Ara
Maximum flow: bipartite matching ve push-relabel
Maximum Flows: bipartite graph matching, integrality theorem, push-relabel algorithms
bipartite matchingintegrality theorempush-relabel

Değerlendirme 100% · 4 adım

40%
30%
3%
27%
Midterm Midterm 40%
Final Final 30%
In-class attendance Attendance 3%
Project Project 27%
en büyük tek kalem %40 · sınav ağırlığı %70 · 11 dönem ortalaması 3.06 (195 öğrenci) nasıl hesaplanıyor
Notunu hesapla
KalemAğırlık Notun (100 üzerinden)
Midterm%40
Final%30
Attendance%3
Project%27
Bildiğin notları gir; girmediklerin hesaba katılmaz.

Ağırlıklar CS 502 izlencesinden. Hocanın bu dönemki dağılımı farklı olabilir; bağlayıcı olan ders izlencesidir. Harf notu sınırlarını hoca belirliyor, o yüzden hedefi sen giriyorsun. İzlencede FZ şartı var, sayfanın sonundaki kutuda.

Önerilen kaynaklar 2 kitap

📕
Zorunlu
Introduction to Algorithms, T.H.Cormen, C.E.Leiserson and R.L. Rivest, 1994, MIT Press & McGraw-Hill
📖
Önerilen
Applied and Algorithmic Graph Theory, G. Chartrand and O. R. Oellermann, 1993, McGraw-Hill

Bu dersi alınca · 6 öğrenme çıktısı

Bilkent'in resmî syllabus'ünden. Sağdaki etiket o çıktının hangi değerlendirmeyle ölçüldüğünü söylüyor.

🤖 GenAI politikası

Any use of genAI tools in a homework/project assignment must be appropriately

Ders notları · henüz yok

CS 502 için defter ekibi henüz not yazmadı.

İlk dosyayı sen atarsan: not, slayt, geçmiş sınav, çözüm, cheat-sheet, ne varsa. defter ekibi öğrenci paylaşımlarından bu dersin notlarını yazar. Drive linki / PDF / ZIP, hepsi olur.

← katalog

Geçmiş GPA dağılımı 11 dönem · ort. 3.06

DönemDers ort.
2025-2026 Spring 3.60 1 şube · 4 öğr
2024-2025 Spring 2.14 1 şube · 7 öğr
2023-2024 Spring 3.47 1 şube · 15 öğr
2022-2023 Spring 3.18 1 şube · 8 öğr
2020-2021 Fall 3.16 1 şube · 20 öğr
2017-2018 Fall 3.26 1 şube · 37 öğr
2013-2014 Fall 2.52 1 şube · 22 öğr
2012-2013 Spring 2.83 1 şube · 23 öğr
2010-2011 Spring 2.82 1 şube · 26 öğr
2008-2009 Spring 3.42 1 şube · 11 öğr

Dersin dönem ortalaması, o dönemin bütün şubeleri birlikte. Kaynak STARS'ın ders değerlendirme raporu. Rapor yalnız kampüs ağından ya da Bilkent VPN ile açılıyor: CS 502 raporu · Bilkent VPN bilgisi. Öğrenci anket cevaplarını defter'de tutmuyoruz. Tüm derslerin ortalamaları →

2026-2027 Güz döneminde açılmadı. Ders kaydı geçti, kayıt sisteminde bu dersin şubesi yok. Katalogda duruyor, yani başka bir dönem açılabilir. Son 4 güz döneminde açılmamış; en son 2020-2021 güz döneminde açılmış. Açık dersler → · kayıt tarihleri

⚠️ FZ engelleyen şartlar

Course Learning Outcomes: Course Learning Outcome Assessment Become fluent in analyzing algorithms and data structures in terms of correctness and required computational resources. Midterm Final Comprehensively understand, use, and manipulate advanced and efficient data structures. Midterm Develop a comprehensive and in-depth understanding of common algorithm design techniques. Midterm Final Be able to design and analyze algorithms to solve new problems. Final Understand how to formulate different problems in terms of each other. Final Develop a comprehensive understanding of the theory of computational complexity. Final

Hocalar 0 bu dönem · 3 geçmiş

Geçmişte ders veren (3 kişi)
Cevdet Aykanat, Uğur Doğrusöz, Mehmet Koyutürk

Aynı koddan diğer dersler · katalogda 78 CS dersi · tüm CS dersleri →