Ders Adı | Kodu | Verildiği Yıl | Verildiği Yarıyıl | Süresi (T+U) | Yerel Kredisi | AKTS Kredisi |
Veri Yapıları | CPR 205 | 2 | 1 | 3 + 0 | 3 | 5,00 |
|
Ders Bilgileri |
Dersin Öğretim Dili | İngilizce |
Dersin Seviyesi | Ön Lisans |
Dersin Türü | Zorunlu |
Dersin Veriliş Biçimi | Yüz Yüze |
|
Dersin Öğrenme Kazanımları:
Bu dersi başarı ile tamamlayan öğrenciler: |
1. Sıralama algoritmalarının nasıl çalıştıklarını ve yaklaşım farklılıklarını öğrenir. |
2. Özyineleme kavramını ve nasıl kullanacağını öğrenir. |
3. Yığıt veri yapısı kavramını ve nasıl kullanacağını öğrenir. |
4. Kuyruk veri yapısı kavramını ve nasıl kullanacağını öğrenir. |
5. Bağlı liste veri yapısı kavramını ve nasıl kullanacağını öğrenir. |
6. İkili ağaç veri yapısı kavramını ve nasıl kullanacağını öğrenir. |
|
Dersin Önkoşulları ve Birlikte Alınması Gereken Dersler | Yok |
Daha Önce Alınmış Olması Önerilen Dersler | Yok |
|
Dersin Tanımı:
Bu ders, veri yapıları ve algoritmaların temel prensiplerine bir giriş sağlar. Öğrenciler, veri kümelerini yönetmek, erişmek ve işlemek için gerekli olan çeşitli veri yapısı tekniklerini ve algoritmik stratejileri öğreneceklerdir. |
|
Üretken Yapay Zeka Kullanımı:
Kullanılmamaktadır. |
|
Dersin İçeriği (Haftalık Konu Dağılımı): |
|
Hafta | Konu |
1 | Veri Yapılarına Giriş |
2 | Programlama Dilleri Tekrarı |
3 | Dizi ve Listeler |
4 | Sıralama Algoritmaları I |
5 | Sıralama Algoritmaları II |
6 | Özyineleme I |
7 | Özyineleme II |
8 | Konu Tekrarı |
9 | Yığıt Veri Yapısı |
10 | Kuyruk Veri Yapısı |
11 | Bağlı Liste Veri Yapısı I |
12 | Bağlı Liste Veri Yapısı II |
13 | İkili Ağaç Veri Yapısı |
14 | Konu Tekrarı |
|
Kaynaklar: |
Goodrich, M. T., Tamassia, R., Mount, D. M. Data Structures and Algorithms in C++ (2nd Edition). Wiley, 2011. ISBN-13: 978-0470383278. |
|
Diğer Kaynaklar: |
|
|
Öğretim Yöntem ve Teknikleri: |
Her hafta üç saat ders anlatılır. Sınavlara ek olarak quiz ve ödevler ile ara değerlendirmeler gerçekleştirilir. |
|
Değerlendirme Sistemi: |
Yöntem | Adet | Katkı (%) |
Ara Sınav | 1 | %30 |
Final Sınavı | 1 | %40 |
Ödev | 1 | %10 |
Test/Quiz/Kısa Sınav | 2 | %10 |
|
Ders İşbaşı Eğitimi (iş yerinde eğitim) Gerektiriyor mu? |
Gerektirmiyor |
|
Dersin AKTS İş Yükü:
|
# | Aktivite | Adet | Süre (Saat) | İş Yükü |
1 | Derslere Katılım (haftalık bazda) | 14 | 3,00 | 42,00 |
2 | Laboratuvarlara/Derslere Katılım (haftalık bazda) | 0 | 0,00 | 0,00 |
3 | Notların önceden hazırlanması ve son haline getirilmesi (haftalık bazda) | 0 | 0,00 | 0,00 |
4 | İlgili materyalin toplanması ve seçilmesi (bir kez) | 0 | 0,00 | 0,00 |
5 | İlgili materyalin kendi kendine incelenmesi (haftalık bazda) | 0 | 0,00 | 0,00 |
6 | Ev ödevleri | 1 | 15,00 | 15,00 |
7 | Sınavlara Hazırlık | 1 | 20,00 | 20,00 |
8 | Ara Sınavlara Hazırlık (Sınavların süresi dahil) | 1 | 20,00 | 20,00 |
9 | Dönem Ödevi/Vaka Çalışması Raporunun Hazırlanması (sözlü sunum dahil) | 1 | 10,00 | 10,00 |
10 | Dönem Projesi/Saha Çalışması Raporunun Hazırlanması (sözlü sunum dahil) | 0 | 0,00 | 0,00 |
11 | Final Sınavına Hazırlık (sınav süresi dahil) | 1 | 20,00 | 20,00 |
|
Dersin Program Yeterlilikleri vs. Öğrenme Kazanımları:
|
# | Program Yeterlilikleri | Katkı (0-4) |
1 | Bilgisayar sistemlerinde yeterli altyapıya sahip olma; bu alandaki kuramsal ve uygulamalı bilgileri bilgisayar sistemlerinde kullanabilme becerisi, Bilgisayar sistemindeki problemleri saptama, tanımlama ve çözme becerisi; bu amaçla uygun yöntemler ve tekniklerini seçme ve uygulama becerisi | 0 |
2 | Bir sistemi, sistem bileşenini ya da süreci analiz etme ve istenen gereksinimleri karşılamak üzere gerçekçi kısıtlar altında tasarlama becerisi; bu doğrultuda modern tasarım yöntemlerini uygulama becerisi, Bilgisayar programında gerekli olan teknik araçları seçme ve kullanma becerisi; bilişim teknolojilerini etkin kullanma becerisi | 0 |
3 | Bilgisayar Teknolojileri ve Programlama alanında tanımı iyi yapılmış problemlerin çözümü için gerekli olan verileri tanımlama, toplama ve kullanmayı etkin bir biçimde yapabilmek; pratik uygulamalarda gereken teorik bilgileri, el ve/veya düşünsel becerileri kullanabildiğini göstermek | 0 |
4 | İleri düzey programlama becerisi kazanır. Güncel bilgisayar programlama teknolojilerini kullanarak sektörün beklentilerini karşılayacak şekilde Bilgisayar Programcılığı ile ilgili süreci/süreçleri planlama becerisine sahip olmak. | 0 |
5 | Bağımsız çalışabilme, inisiyatif alabilme, özgün içerikler oluşturabilme ve yazılım takımları içinde verimli çalışabilme becerisine sahip olmak. | 0 |
6 | Türkçeyi ve İngilizce yazılı ve sözlü olarak etkin bir biçimde kullanabilme, sunulan Bilgisayar Programcılığı bilgisini kolayca takip etme ve meslektaşlarıyla etkin bir biçimde iletişim kurabilme becerisine sahip olmak. | 0 |
7 | Sorunların çözümünde bilimsel yöntemler kullanmayı benimser ve problem çözme becerisini geliştirir. | 0 |
8 | Bilgiye erişebilmeye bu amaçla kaynak araştırması yapabilme, veri tabanları ve diğer bilgi kaynaklarını kullanabilme becerisi, Yaşam boyu öğrenmenin gerekliliği bilinci; bilim ve teknolojideki gelişmeleri izleme ve kendini sürekli yenileme becerisi | 0 |
9 | Kendi alanı ile ilgili çalışmalarda öngörülmeyen durumlarla ilgili sorunları belirleme ve çözüm arama yeteneğini kazandığını göstermek | 0 |
10 | Bilgiye erişebilme bilimde ve teknolojide gelişmeleri takip edebilme ve sürekli kişisel gelişimi sürdürebilme becerisine sahip olmak | 0 |
11 | Mesleki, hukuksal, sosyal ve etik sorumluluklarını anlayabilir ve uygular. | 0 |