İçeriğe geç

Ders

COEY1212947

İLERİ ALGORİTMA ANALİZİ

TEORİ
3
UYGULAMA
0
KREDİ
3
AKTS
8

ÖN KOŞULLAR

Yok

ŞUNLARIN ÖN KOŞULU

Yok

OKUTULDUĞU PROGRAMLAR

DİLEnglishDÜZEYSecond Cycle (Master's Degree)TÜRElective

AMAÇ

Hem uygulamalı hem de teorik bilgisayar bilimleri ile ilgili olan hesapsal problemleri çözmek için temel algoritma dizayn tekniklerini ve bu teknikler sonucunda geliştirilen algoritmaların performansını incelemek için kullanılan teknikleri tanıtmak. ALgoritma analizi için matematik bilgisi sıralama, arama, grafik problemleri ve geometrik problemler için kullanılan temel algoritma teknikleri ele alınacaktır.

İÇERİK

Bu ders; Algoritma analizine giriş ve ders ile alakalı bilgilerin açıklanması ,Asimtotik gösterim ,Böl ve kazan algorithma metotu ,Yinelemelerin çözümü ,Hızlı Sıralamanın analizi, Rastgele Hızlı Sıralama. ,Yığın sıralama ,Hızlı Sıralama ,Lineer zamanda sıralama ,Ara Sınava Hazırlık,Ortalama ve sıra istatiği. ,Dinamik Programlama ,Açgözlü(Greedy) Algoritmalar ,Amortize Analiz, Dinamik Tablolar ,Çizgeler, Breadth-first Search (BFS). ; konularını içermektedir.

ÖĞRENME KAZANIMLARI

TR GÜNCELLENMEDİ
  1. 1

    Describe the fundamentals of algorithm analysis.

    Öğretim yöntemi: Tartışma Yöntemi, Örnek Olay Yöntemi, Bireysel Çalışma Yöntemi, Deneyimle Öğrenme Modeli · Değerlendirme: Klasik Yazılı Sınav, Ödev

  2. 2

    Construct complex algorithms using the data structures that they have learned.

    Öğretim yöntemi: Tartışma Yöntemi, Örnek Olay Yöntemi, Bireysel Çalışma Yöntemi, Deneyimle Öğrenme Modeli · Değerlendirme: Klasik Yazılı Sınav, Ödev

  3. 3

    Develop complex algorithms and advanced data structures that are using trees and will be able to apply them to real world problems.

    Öğretim yöntemi: Öğretme – öğrenme yöntem ve stratejileri, öğrencilerin kendi kendine çalışma, yaşam boyu öğrenme, gözlem yapma, başkasına öğretme, sunma, eleştirel düşünme, takım çalışması, bilişimden etkin yararlanma gibi becerilerini arttıracak şekilde seçilmektedir. Ayrıca, öğretim tarzının farklı kabiliyetleri olan öğrencileri destekleyecek biçimde olmasına dikkat edilir. Programında kullanılan eğitim-öğretim metotları aşağıdaki listede verilmiştir **: Eğitim - Öğretim Yöntemleri *, Tartışma Yöntemi, Örnek Olay Yöntemi, Soru - Cevap Tekniği, Deneyimle Öğrenme Modeli · Değerlendirme: Klasik Yazılı Sınav, Ödev, Proje Görevi

  4. 4

    Develop complex algorithms and advanced data structures that are using graphs and will be able to apply them to real world problems.

    Öğretim yöntemi: Öğretme – öğrenme yöntem ve stratejileri, öğrencilerin kendi kendine çalışma, yaşam boyu öğrenme, gözlem yapma, başkasına öğretme, sunma, eleştirel düşünme, takım çalışması, bilişimden etkin yararlanma gibi becerilerini arttıracak şekilde seçilmektedir. Ayrıca, öğretim tarzının farklı kabiliyetleri olan öğrencileri destekleyecek biçimde olmasına dikkat edilir. Programında kullanılan eğitim-öğretim metotları aşağıdaki listede verilmiştir **: Eğitim - Öğretim Yöntemleri *, Tartışma Yöntemi, Örnek Olay Yöntemi, Soru - Cevap Tekniği, Deneyimle Öğrenme Modeli · Değerlendirme: Klasik Yazılı Sınav, Ödev, Proje Görevi

  5. 5

    Design a novel algorithm using techniques like dynamic programming, divide and conquer and greedy algorithms by systematically look at a given computational problem

    Öğretim yöntemi: Tartışma Yöntemi, Örnek Olay Yöntemi, Bireysel Çalışma Yöntemi, Soru - Cevap Tekniği, Deneyimle Öğrenme Modeli · Değerlendirme: Klasik Yazılı Sınav, Ödev

HAFTALIK PLAN

  1. HAFTA 1

    Algoritma analizine giriş ve ders ile alakalı bilgilerin açıklanması

    Ön hazırlık: Ders sunuları ve ders kitabının 1. ve 2. bölümü

  2. HAFTA 2

    Asimtotik gösterim

    Ön hazırlık: Ders sunuları ve ders kitabının 3. bölümü

  3. HAFTA 3

    Böl ve kazan algorithma metotu

    Ön hazırlık: Ders sunuları ve ders kitabının 4. bölümü

  4. HAFTA 4

    Yinelemelerin çözümü

    Ön hazırlık: Ders sunuları ve ders kitabının 4. bölümü

  5. HAFTA 5

    Hızlı Sıralamanın analizi, Rastgele Hızlı Sıralama.

    Ön hazırlık: Ders sunuları ve ders kitabının 5. bölümü

  6. HAFTA 6

    Yığın sıralama

    Ön hazırlık: Ders sunuları ve ders kitabının 6. bölümü

  7. HAFTA 7

    Hızlı Sıralama

    Ön hazırlık: Ders sunuları ve ders kitabının 7. bölümü

  8. HAFTA 8

    Lineer zamanda sıralama

    Ön hazırlık: Ders sunuları ve ders kitabının 8. bölümü

  9. HAFTA 9

    Ara Sınava Hazırlık

    Ön hazırlık: 7. haftaya kadar olan tüm konular

  10. HAFTA 10

    Ortalama ve sıra istatiği.

    Ön hazırlık: Ders sunuları ve ders kitabının 9. bölümü

  11. HAFTA 11

    Dinamik Programlama

    Ön hazırlık: Ders sunuları ve ders kitabının 15. bölümü

  12. HAFTA 12

    Açgözlü(Greedy) Algoritmalar

    Ön hazırlık: Ders sunuları ve ders kitabının 16. bölümü

  13. HAFTA 13

    Amortize Analiz, Dinamik Tablolar

    Ön hazırlık: Ders sunuları ve ders kitabının 17. bölümü

  14. HAFTA 14

    Çizgeler, Breadth-first Search (BFS).

    Ön hazırlık: Ders sunuları ve ders kitabının 22. bölümü

DEĞERLENDİRME

  • Ara Sınavın Başarıya Oranı50%
  • Genel Sınavın Başarıya Oranı50%

İŞ YÜKÜ

ETKİNLİKSAYISAATTOPLAM
Ders Saati14570
Rehberli Problem Çözme000
Problem Çözümü / Ödev / Proje / Rapor Tanzimi21530
Okul Dışı Diğer Faaliyetler000
Proje Sunumu / Seminer22040
Kısa Sınav (QUİZ) ve Hazırlığı000
Ara Sınav ve Hazırlığı14040
Genel Sınav ve Hazırlığı14545
Performans Görevi, Bakım Planı000

KAYNAKLAR

  • T. H. Cormen, C. E. Leiserson, R. L. Rivest, and C. Stein, Introduction to Algorithms, Mit Press and McGraw-Hill, 2009.
  • Derslerde dağıtılacak olan sunum ve notlar.

ÖĞRETİM ELEMANLARI

  • Prof.Dr. Reda ALHAJJKOORDİNATÖR
  • Prof.Dr. Reda ALHAJJ