VERİ YAPILARI VE ORGANİZASYONU
- Ders
- ITSE242 - VERİ YAPILARI VE ORGANİZASYONU
- Bölüm
- Bilgi Güvenliği Teknolojisi - İngilizce - Lisans
- Ders Tipi
- Ders
- Durum
- Zorunlu
- Dil
- Türkçe
- Kredi
- 4
- AKTS
- 0
- T+P+L
- 3 + 0 + 2
- Ders Koordinatörleri
- Yrd. Doç. Dr. Sara SALEHI
- Ön Koşul
- Anahtar Sözcükler
Ders Açıklaması
Veri Yapıları ve Veri Organizasyonu dersi, temel veri yapıları olan diziler, yapılar, yığıtlar, kuyruklar ve bağlı listelere giriş konularını kapsamaktadır. Bunların yanında, veri yapılarının kullanıldığı temel uygulamaların incelenmesi de dersin kapsamındadır. Bu uygulamalar, yığıt uygulamaları olan parantez kontrol algoritması, infix - postfix çevirme algoritması, postfix değerlendirme algoritması ve özyineleme olarak incelenir. Bağlı listeler konusunda hafızadan dinamik yer ayırma ve bununla birlikte bağlı listeleri gerçekleştirme ile çeşitlerini anlama ele alınmaktadır. Temel veri yapılarından olan yığıt ve kuyrukları bağlı listeler halinde gerçekleştirme, diğer bağlı liste çeşitleri olan doğrusal bağlı listeler, dairesel bağlı listeler ve çift yönlü bağlı listeleri inceleme de dersin içeriği içindedir.
VERİ YAPILARI VE ORGANİZASYONU
Değerlendirme Araçları (Aktif Dönem)
| Öğe | Tür | Ağırlık (%) |
|---|---|---|
| Midterm Exam | Ara Sınav | 35 |
| Quiz | Kısa Sınav | 20 |
| Final Exam | Final | 45 |
| Toplam | 100 | |
Ders çıktıları
- 01 Problem solving using linear data structures: Stack applications
- 02 Examine and explain the working principles of the linear data structures: Stack and Queue
- 03 Implement the basic linear data structures: Stack and Queue
- 04 Examine and implement the dynamic data structures: Linked List
- 05 Examine and implement the hierarchical data structures: Tree
Ders Müfredatı
| Hafta | Konu |
|---|---|
| Hafta 1 | Introduction to Data Structures and Functions Review |
| Hafta 2 | Lists, Arrays and Tuples |
| Hafta 3 | Dictionaries, Classes and Objects |
| Hafta 4 | Structures and Abstract Data Types |
| Hafta 5 | Stack |
| Hafta 6 | Stack Applications |
| Hafta 7 | Review and Practice |
| Hafta 8 | MID-TERM EXAM WEEK |
| Hafta 9 | Queue |
| Hafta 10 | Linked List |
| Hafta 11 | Linked List |
| Hafta 12 | Tree |
| Hafta 13 | Tree |
| Hafta 14 | Review and Problem Solving |
| Hafta 15 | FINAL EXAM WEEK |
Referans Kitaplar & Ders Materyalleri
- 01 Goodrich, M. T., Tamassia, R., & Goldwasser, M. H. (2013). Data structures and algorithms in Python. Hoboken, NJ, USA: Wiley.
- 02 Miller, B., & Ranum, D. (2013). Problem solving with algorithms and data structures.
- 03 Dierbach, C. (2012). Introduction to computer science using python: A computational problem-solving focus. Wiley Publishing.
- 04 Horstmann, C. S., & Necaise, R. D. (2022). Python for everyone. John Wiley & Sons.
Ders Çıktıları
- L01 Doğrusal veri yapıları kullanarak problem çözer: (Stack) uygulamaları SOLO 3
- L01 Python listelerinin temel programlama problemlerini çözmede kullanımını incelemek; ekleme, silme, arama, indeksleme ve dolaşma gibi yaygın liste işlemlerini uygulamak. SOLO 3
- L02 Doğrusal veri yapılarının çalışma prensiplerini inceler ve açıklar: (Stack) ve (Queue) SOLO 3.5
- L02 Python’da yapılandırılmış verilerin sınıflar ve dataclass yapıları kullanılarak nasıl temsil edildiğini incelemek; ilgili özellikler ve metotlarla basit kayıt yapıları oluşturmak. SOLO 3.5
- L03 Temel doğrusal veri yapılarını uygular: (Stack) ve (Queue) SOLO 4
- L03 Yığınların çalışma prensiplerini incelemek; ifade işleme, veriyi ters çevirme ve dengeli sembol kontrolü gibi problemler için yığın tabanlı çözümler uygulamak. SOLO 4
- L04 Dinamik veri yapılarını inceler ve uygular: (Linked List) SOLO 3.5
- L04 Kuyrukların çalışma prensiplerini incelemek; Python kullanarak kuyruğa ekleme, kuyruktan çıkarma, ilk elemanı görüntüleme ve dolaşma gibi temel kuyruk işlemlerini uygulamak. SOLO 3.5
- L05 Hiyerarşik veri yapılarını inceler ve uygular: (Tree) SOLO 3.5
- L05 Dinamik veri saklama kavramını incelemek; düğüm oluşturma, ekleme, silme, arama ve dolaşma işlemlerini içeren bağlı liste yapısını uygulamak. SOLO 4
Program Çıktıları
- P01 Kuruluşlarda karşılaşılan güvenlik sorunlarına güvenlik protokolünü ve araçlarını anlayabilirler ve uygulayabilirler,
- P02 Güvenlik sorunlarıyla mücadele etmek için güvenlik yazılımı tasarlayabilirler,
- P03 Bilgisayar odaklı zorluklar için güvenlik çözümlerini tanımlayabilir, kategorize edebilir ve geliştirebilirler
- P04 Bilgisayar güvenliği projelerinin yönetiminde özerklik ve sorumluluk gösterebilirler
- P05 Bilgisayar teknolojisi güvenliğinde en son kavramları takip edebilirler
- P06 Gerçekçi kısıtlamalar içinde istenen güvenlik ihtiyaçlarını karşılamak için bir hesaplama sistemi tasarlayabilir, uygulayabilir ve değerlendirebilirler
- P07 Bilgisayar sistemlerinin güvenliğini sağlamak için gerekli olan uygun güvenlik tekniklerini, protokolleri, becerileri ve araçları kullanabilirler
- P08 Profesyonel, etik, yasal, güvenlik ve sosyal konuları ve sorumlulukları anlayabilirler
- P09 Profesyonel ortamla uyumlu ekip çalışmasında etkili işbirliği becerilerini uygulayabilirler
- P10 Bir kuruluşta güvenli bir operasyonu kolaylaştırmak için uygun güvenlik teknolojisi ve tekniklerini uygulayabilirler
Pç-Dç Matrisi
| ÖÇ | P01 | P02 | P03 | P04 | P05 | P06 | P07 | P08 | P09 | P10 | Ortalama |
|---|---|---|---|---|---|---|---|---|---|---|---|
| L01 | - | - | - | - | - | - | - | - | - | - | - |
| L01 | 4 | 4 | 4 | 4 | 4 | 4 | 5 | 4 | 4 | 4 | 4.1 |
| L02 | - | - | - | - | - | - | - | - | - | - | - |
| L02 | 4 | 4 | 4 | 4 | 4 | 4 | 4 | 4 | 4 | 4 | 4 |
| L03 | - | - | - | - | - | - | - | - | - | - | - |
| L03 | 4 | 4 | 4 | 4 | 5 | 4 | 5 | 5 | 5 | 5 | 4.5 |
| L04 | - | - | - | - | - | - | - | - | - | - | - |
| L04 | 5 | 5 | 5 | 5 | 4 | 4 | 4 | 4 | 4 | 4 | 4.4 |
| L05 | - | - | - | - | - | - | - | - | - | - | - |
| L05 | 4 | 5 | 4 | 5 | 4 | 5 | 5 | 4 | 4 | 4 | 4.4 |