İstanbul Ticaret Üniversitesi

 

Veri Yapıları ve Algoritma Analizi (data structures and Algorithm Analysis)

 

Dersi Veren: Şadi Evren ŞEKER (Yük. Müh.)

Web Sitesi: www.sadievrenseker.com/datastr

Email Adresi:datastr [at] sadievrenseker.com

Dersin Amacı:

Temel mühendislik nosyonlarından birisi olan veriyapıları bilginsin öğrencilere kazandırılması ve programlama felsefesine hâkim hale getirilmesi. Algoritma tasarımında dikkat edilmesi gereken konuların öğretilmesi ve bu sayede problem analizinde farklı bir bakış açısı olan analiz ve tasarım iyileştirlmesi (optimisation) mantığının geliştirilmesi.

Günümüzde en çok kullanılan C-Syntax’ine öğrencilerin alıştırılması ve bu sayede Java, C++ gibi dillere kolay geçiş yapabilecek hale getirilmesi. Temel veri yapılarının tanıtılması ve kullanabilecek seviyeye getirilmesi.

Eğitim hayatlarının geri kalanında ve mühendislik hayatında gerekecek matematiksel alt yapının kazandırılması ve algoritma tasarımında kullanır hala getirilmesi.






Olası Ders İçeriği:
  • Pointer İşlemleri
  • Call by Reference & Call by value (Değer ve referans ile çağırma)
  • Function Pointers (Fonksiyon Göstericileri)
  • Struct ve Composition (yapı ve oluşum)
  • Linked List (bağlı liste) ve örnek kodlar
  • Stack (Yığın)
  • Queue (sıra)
  • Ara sınav (tahmini olarak queue'dan sonra olacaktır değişebilir)
  • (Ağaçlar) , İkili Ağaçlar , İkili Arama Ağacı
  • Graphics (Grafikler)
  • Shortest Path & Minimum Spanning Tree (En kısa yol ve asgari tarama ağacı)
  • Map Accumulate ve Filter fonksiyonlarının ağaç ve bağlı listede kullanımı
  • Final
    Yukarıdaki içerik tahmini içerik olup öğrenci performansına göre değiştirilebilir.

    Referans Kitaplar:
    Öğrencilerin dil tercihine bağlı olarak "Mark Allen Weiss" tarafından yazılmış "Addison Wesley" yayın evi tarafından yayınlanmış Data Structures and Algorithm Analysis in C,C++ veya JAVA olabilir detaylı bilgileri için yazarın web sitesini ziyaret edebilirsiniz.
    Yine schaum's serisi "Data Structures with" kitaplarından istenilen dil için kitap alınabilir "Data Structures with Java, C veya C++" olabilir.
    Hatırlatma: Ders boyunca kullanılacak olan resmi dil C dilidir.

    Dersin saatleri ve sınıf:
  • Dersler çarşamba günleri 14-17 saatleri arasında 146 numaralı salonda yapılacaktır. (238 olarak değiştirilmiştir)
    Dersin değerlendirmesi:
  • Ödevler %10
  • Quizler&Classwork %10
  • Arasınav %20
  • Dönem Projesi %20
  • Final %40

    Notlarınız ve Proje konularınız

    Final Sınavı ve Çözümü



    Lab Çalışması (Classwork) Çalışmaların tamamı ilgili ders notu linkinin altındadır. İlgili konuya girerek örnek kodlara erişebilirsiniz.

    Çalışma 1(Otopark) Çözümü

    İkili Arama Ağacı Çözümü

    İki adet İkili Arama Ağacı toplayan kod

    İkili Arama Ağacıni ekrana basan kod

    Dosya İşlemleri

    String işlemleri

    Ağaç işlemleri
    Ödevler:
    Ödev 1 --- Cozum

    Ödev 2 --- Cozum

    Ödev 3 --- Cozum

    Ödev 4 --- Cozum

    Ödev 5 Duyurular:
  • Dersin yeri 238 olarak değişmiştir yeni açılacak section için duyuruları takip ediniz.
  • Derse katılım yoğun olduğu için ikinci bir section açılması gündemdedir. Lütfen saat konusunda idari görevliler ile görüşünüz.
  • Bu hafta (12 mart'a kadar olan hafta) ödev yoktur.
  • Proje teslimleri için 16 Mayıs 2008 tarihi son gündür. Bu tarihte gece yarısına kadar kod ve raporlarınızı yollayınız.
  • 3. sınıflar için çarşamba final sınavı sonrası, 4.sınıflar için perşembe günü demo yapılacaktır. Lütfen uygun olan saatleriniz için önceden Takvim programından randevü alınız. Randevülar ilk gelen ilk alır şeklinde verilecektir.
  • Projeler için kaynak bilgi ve örnek dökümanlar aşağıdaki linklerden ulaşılabilir:
  • Analiz Dökümanı Detayları
  • Örnek döküman kalıpları ve örnek dökümanlar
  • Tasarım Dökümanı Detayları