MIS205 Data StructuresKurumsal BilgilerAkademik Programlar Yönetim Bilişim Sistemleri (İngilizce)Öğrenciler İçin Bilgiler
Yönetim Bilişim Sistemleri (İngilizce)
Lisans TYYÇ: 6. Düzey QF-EHEA: 1. Düzey EQF-LLL: 6. Düzey

Ders Genel Tanıtım Bilgileri

Ders Kodu: MIS205
Ders İsmi: Data Structures
Ders Yarıyılı: Güz
Ders Kredileri:
Teorik Pratik Kredi AKTS
2 2 3 6
Öğretim Dili: EN
Ders Koşulu:
Ders İş Deneyimini Gerektiriyor mu?: Hayır
Dersin Türü: Zorunlu
Dersin Seviyesi:
Lisans TYYÇ:6. Düzey QF-EHEA:1. Düzey EQF-LLL:6. Düzey
Dersin Veriliş Şekli: Yüz yüze
Dersin Koordinatörü: Dr.Öğr.Üyesi Yasemin BAKIR
Dersi Veren(ler): Dr.Öğr.Üyesi Ferhat KUTLU
Dersin Yardımcıları:

Dersin Amaç ve İçeriği

Dersin Amacı: Bu dersin amacı, öğrencilere, bilgisayar algoritmalarının tasarım ve analizinin temelini oluşturan Soyut Veri Yapıları (SVY) kavramını öğretmektir. Bu ders temel SVY’leri ele alarak bu yapıların pratikte gerçeklenmesini sağlayan bazı veri yapıları ve algoritmaları sunar. Derste, algoritmaların çalışma zamanları asimptotik olarak analiz edilerek, algoritma verimliliği vurgulanır.
Dersin İçeriği: Algoritmalara ve veri yapılarına giriş; Dizi veri yapısı ve dinamik bellek tahsisi; Özyinelemeli programlama; Bağlantılı listeler; Yığınlar; Kuyruklar; Ağaç yapımı; Arama teknikleri; Sıralama teknikleri; Hash teknikleri; Bilgi sıkıştırma teknikleri; Temel çizge algoritmaları; Problem çözme çalışması.

Öğrenme Kazanımları

Bu dersi başarıyla tamamlayabilen öğrenciler;
Öğrenme Kazanımları
1 - Bilgi
Kuramsal - Olgusal
2 - Beceriler
Bilişsel - Uygulamalı
1) Özyinelemeli olan ya da olmayan algoritmaların asimptotik çalışma zamanlarını büyük-O gösterimini kullanarak analiz edebilecektir.
3 - Yetkinlikler
İletişim ve Sosyal Yetkinlik
Öğrenme Yetkinliği
1) veri ekleme ve silme işlemleri yapan arama problemlerinin çözümünde, dizi ve bağlı liste yapıları ile karma teknikleri arasından daha avantajlı olanı seçebilecektir.
2) Ağaç yapılarından uygun olanları kullanarak arama, ekleme ve silme operasyonları başına O (log n) maliyetle çalışacak bilgisayar programları geliştirebilecektir.
3) Sıralamaya ihtiyaç duyan verimli uygulamalar için, doğru sıralama algoritmasını seçebilecektir.
4) Yaygın veri yapılarını idame ettirmek için gerekli operasyonları açıklayabilecektir.
Alana Özgü Yetkinlik
1) Çeşitli veri yapılarının kullanım alanlarını tarif edebilecektir.
2) Hesaplama problemlerini çözümünde gerekecek uygun veri yapılarını tasarlayabilecektir.
Bağımsız Çalışabilme ve Sorumluluk Alabilme Yetkinliği

Ders Akış Planı

Hafta Konu Ön Hazırlık
1) Giriş: Matematiksel Tekrar ve Özyineleme Data Structures and Algorithms Made Easy in Java, Narasimha Karumanchi, 2011
2) Veri türleri, yapıları, soyutlamalar Data Structures and Algorithms Made Easy in Java, Narasimha Karumanchi, 2011
3) Algoritma Analizi ve Doğrusal Veri Yapıları Data Structures and Algorithms Made Easy in Java, Narasimha Karumanchi, 2011
4) Doğrusal Veri Yapıları (Bağlı Listeler, Yığıtlar, Yığıt Uygulamaları) Data Structures and Algorithms Made Easy in Java, Narasimha Karumanchi, 2011
5) Doğrusal Veri Yapıları (Kuyruklar) ve Ağaçlar (İkili Ağaçlar) Data Structures and Algorithms Made Easy in Java, Narasimha Karumanchi, 2011
6) Ağaçlar (İkili Arama Ağaçları) Data Structures and Algorithms Made Easy in Java, Narasimha Karumanchi, 2011
7) Ağaçlar Data Structures and Algorithms Made Easy in Java, Narasimha Karumanchi, 2011
8) Ara dönem Sınavları
9) sıralama Data Structures and Algorithms Made Easy in Java, Narasimha Karumanchi, 2011
10) arama Data Structures and Algorithms Made Easy in Java, Narasimha Karumanchi, 2011
11) Sıralama (Araya Eklemeli Sıralama, Shell Sıralama, Yığın Sıralaması) Data Structures and Algorithms Made Easy in Java, Narasimha Karumanchi, 2011
12) Sıralama (Birleştirme sıralaması, Hızlı Sıralama) Data Structures and Algorithms Made Easy in Java, Narasimha Karumanchi, 2011
13) Çizge Algoritmaları (Tanımlar, Gösterimler, Topolojik Sıralama) Data Structures and Algorithms Made Easy in Java, Narasimha Karumanchi, 2011
14) Böl ve Fethet Algoritmaları Data Structures and Algorithms Made Easy in Java, Narasimha Karumanchi, 2011
15) Karmaşıklık Sınıfları Data Structures and Algorithms Made Easy in Java, Narasimha Karumanchi, 2011
16) Dönem sonu sınaları

Kaynaklar

Ders Notları / Kitaplar: • Data Structures and Algorithms Made Easy in Java, Narasimha Karumanchi, 2011
Diğer Kaynaklar: • Data Structures and Algorithms Made Easy in Java, Narasimha Karumanchi, 2011

Ders - Program Öğrenme Kazanım İlişkisi

Ders Öğrenme Kazanımları

1

2

3

4

6

5

7

Program Kazanımları
1) Bilgi Teknolojileri ve İşletme Bilimi alanlarında elde ettiği bilgileri karar verme amacıyla uygun araçlarla kullanabilmek.
2) Bilgisayar donanımını tanıyabilmek, parçaların teknik özelliklerini ayırt edebilmek, karşılaştırmak, sınıflandırmak ve uygun donanım seçimini yapabilmek.
3) Yazılım türleri, yazılım seçimi ve temini konularında bilgi sahibi olmak ve yazılım geliştirme süreçlerini planlayıp yönetebilmek.
4) Uygulamalar için gerekli olan veritabanı tasarımını gerçekleştirmek.
5) Bilgisayar ağ sistemi kurabilmek, ağlara ve donanıma yönelik karşılaşılan sorunları çözebilmek.
6) Farklı disiplinlerin Yönetim Bilişim Sistemleri (YBS) tabanlı problem çözümünde veri ihtiyaçlarını belirleyebilmek, bu verileri temin edebilmek ve verileri derleyerek bilgi üretme ve kullanıma hazır hale getirebilmek.
7) Bilgi sistemi gereksinimlerini belirleyebilmek, sistem analizi yapabilmek ve tasarımını gerçekleştirebilmek.
8) Bir YBS veya sosyal problemin çözümüne yönelik olarak proje tasarlayabilmek ve farklı çözüm yöntemleri önerebilmek.
9) Projelerde YBS uzmanı olarak tasarım yapabilmek, projeye gerek yönetici gerekse çalışan olarak katkı sağlayabilmek ve yenilikçi fikirler üretebilmek.
10) Bir bilişim sistemi probleminin takım halinde çözülmesi durumlarında, problemin her aşamasında bireysel sorumluluk alabilmek, takıma katkı verebilmek ve gerektiğinde takıma liderlik edebilmek.
11) Türkçe ve İngilizce dillerini kullanaak mesleki, güncel ve gelişen eğilimleri takip edebilmek, gerekli bilgileri yazılı ve sözlü olarak aktarabilmek.
12) Alanında edindiği bilgi ve becerileri farklı disiplinlerle entegre ederek eleştirel bir bakış açısıyla değerlendirebilmek.
13) Mesleki çalışmalarda toplumsal etik değerlere göre hareket edebilmek.

Ders - Öğrenme Kazanımı İlişkisi

Etkisi Yok 1 En Düşük 2 Düşük 3 Orta 4 Yüksek 5 En Yüksek
           
Dersin Program Kazanımlarına Etkisi Katkı Payı
1) Bilgi Teknolojileri ve İşletme Bilimi alanlarında elde ettiği bilgileri karar verme amacıyla uygun araçlarla kullanabilmek.
2) Bilgisayar donanımını tanıyabilmek, parçaların teknik özelliklerini ayırt edebilmek, karşılaştırmak, sınıflandırmak ve uygun donanım seçimini yapabilmek.
3) Yazılım türleri, yazılım seçimi ve temini konularında bilgi sahibi olmak ve yazılım geliştirme süreçlerini planlayıp yönetebilmek.
4) Uygulamalar için gerekli olan veritabanı tasarımını gerçekleştirmek.
5) Bilgisayar ağ sistemi kurabilmek, ağlara ve donanıma yönelik karşılaşılan sorunları çözebilmek.
6) Farklı disiplinlerin Yönetim Bilişim Sistemleri (YBS) tabanlı problem çözümünde veri ihtiyaçlarını belirleyebilmek, bu verileri temin edebilmek ve verileri derleyerek bilgi üretme ve kullanıma hazır hale getirebilmek.
7) Bilgi sistemi gereksinimlerini belirleyebilmek, sistem analizi yapabilmek ve tasarımını gerçekleştirebilmek.
8) Bir YBS veya sosyal problemin çözümüne yönelik olarak proje tasarlayabilmek ve farklı çözüm yöntemleri önerebilmek.
9) Projelerde YBS uzmanı olarak tasarım yapabilmek, projeye gerek yönetici gerekse çalışan olarak katkı sağlayabilmek ve yenilikçi fikirler üretebilmek.
10) Bir bilişim sistemi probleminin takım halinde çözülmesi durumlarında, problemin her aşamasında bireysel sorumluluk alabilmek, takıma katkı verebilmek ve gerektiğinde takıma liderlik edebilmek.
11) Türkçe ve İngilizce dillerini kullanaak mesleki, güncel ve gelişen eğilimleri takip edebilmek, gerekli bilgileri yazılı ve sözlü olarak aktarabilmek.
12) Alanında edindiği bilgi ve becerileri farklı disiplinlerle entegre ederek eleştirel bir bakış açısıyla değerlendirebilmek.
13) Mesleki çalışmalarda toplumsal etik değerlere göre hareket edebilmek.

Öğrenme Etkinliği ve Öğretme Yöntemleri

Anlatım
Ders
Laboratuvar
Ödev

Ölçme ve Değerlendirme Yöntemleri ve Kriterleri

Yazılı Sınav (Açık uçlu sorular, çoktan seçmeli, doğru yanlış, eşleştirme, boşluk doldurma, sıralama)
Ödev
Uygulama

Ölçme ve Değerlendirme

Yarıyıl İçi Çalışmaları Aktivite Sayısı Katkı Payı
Ödev 1 % 30
Ara Sınavlar 1 % 30
Final 1 % 40
Toplam % 100
YARIYIL İÇİ ÇALIŞMALARININ BAŞARI NOTU KATKISI % 60
YARIYIL SONU ÇALIŞMALARININ BAŞARI NOTUNA KATKISI % 40
Toplam % 100

İş Yükü ve AKTS Kredisi Hesaplaması

Aktiviteler Aktivite Sayısı Süre (Saat) İş Yükü
Ders Saati 15 2 30
Uygulama 15 2 30
Ara Sınavlar 1 45 45
Final 1 45 45
Toplam İş Yükü 150