SEN2212 · Data Structures and Algorithms II

Veri Yapıları ve Algoritmalar II

Ağaçlar, BST, AVL, heap, hashing, graflar ve açgözlü algoritmalar.

Kaynak kitap: Data Structures & Problem Solving Using Java (Mark Allen Weiss)

  1. 1. hafta
    Introduction and Sorting Algorithms.
  2. 2. hafta
    Introduction to different tree structures.
  3. 3. hafta
    Introduction to binary search trees.
  4. 4. hafta
    Implementing binary search tree using Java.
    • BST'yi Java ile yazmakGeneric BinarySearchTree sınıfı: düğüm sınıfı, özyinelemeli insert/remove/contains/findMin/findMax, gezinme, size ve height; sınavda istenen 'write a method' kalıpları.
  5. 5. hafta
    Introduction to balanced trees and implementing AVL balanced tree structure using Java.
  6. 6. hafta
    Using other balanced tree structure using Java.
  7. 7. hafta
    Using heap structure and implementing them using Java.
  8. 8. hafta
    Using heaps as priority queues. Midterm.
  9. 9. hafta
    Analyzing and implementing hashing algorithms.
    • Hashing: zincirleme, açık adresleme ve rehashHash fonksiyonu, doluluk oranı, ayrı zincirleme, doğrusal/karesel yoklama, çift hashing, tembel silme ve rehash; sınavın klasik 'tabloyu doldur' sorularının adım adım çözümü.
  10. 10. hafta
    Analyzing and implementing graph structure using Java.
  11. 11. hafta
    Analyzing and implementing graph algorithms.
  12. 12. hafta
    Analyzing and implementing greedy algorithms.
  13. 13. hafta
    Analyzing and implementing greedy algorithms. Quiz.
  14. 14. hafta
    Review.