Kodu |
Dersin Adı |
Yarıyıl |
Süresi(T+U) |
Kredisi |
AKTS Kredisi |
BIL202 |
VERİ YAPILARI VE ALGORİTMALAR |
4 |
5 |
4 |
7 |
DERS BİLGİLERİ |
Dersin Öğretim Dili : |
Türkçe |
Dersin Düzeyi |
LİSANS, TYY: + 6.Düzey, EQF-LLL: 6.Düzey, QF-EHEA: 1.Düzey |
Dersin Türü |
Zorunlu |
Dersin Veriliş Şekli |
- |
Dersin Koordinatörü |
Dr.Öğr.Üyesi OĞUZHAN ÖZTAŞ |
Dersi Veren Öğretim Üyesi/Öğretim Görevlisi |
|
Ders Ön Koşulu |
Yok |
AMAÇ VE İÇERİK |
Amaç: |
Öğrencilere önemli algoritma ve yapıların zaman ve yer gereksinimlerini analiz etmeyi;
yığın, kuyruk, ağaç ve grafikler gibi birbirinden farklı veri yapılarını analiz etmeyi;
Python'da algoritmaların implementasyonunu öğretmektir. |
İçerik: |
Yığınlar, Yığın Yapıları Uygulamaları, Kuyruklar, Kuyruğa Ekleme, Kuyruktan
Çıkarma, Öncelik Kuyrukları, Ağaç Yapıları, Ağaç Uygulamaları, İkili Arama Ağaçları,
Öbek Yapıları Uygulamaları, Dengeli Arama Ağaçları, Çizge Yapıları, Çizge Yapıları
Uygulamaları Konuları. |
DERSİN ÖĞRENME ÇIKTILARI (Öğrenciler, bu dersi başarı ile tamamladıklarında aşağıda belirtilen bilgi, beceri ve/veya yetkinlikleri gösterirler.) |
Bu dersi alan öğrenciler; |
1. Özyinelemenin temel prensiplerini ve matematiksel tümevarım ile ilişkisini kavrar |
2. Özyinelemeyi bir problem çözme ve programlama tekniği olarak kullanabilir. |
3. Bağlı listeler, çift bağlı listeler, yığıtlar ve kuyruklar gibi önemli soyut veri tiplerini
tasarım ve gerçekleştirim becerisine sahip olur |
4. Ağaçlar gibi ayrık veri yapılarının kombinasyon yöntemiyle analizini yapar. |
5. Sıralama ve arama problemlerinin algoritmik çözümlerini anlama ve ikili arama
ağaçları gibi yaygın arama yapılarını tasarlar. |
HAFTALIK DERS KONULARI VE ÖNGÖRÜLEN HAZIRLIK ÇALIŞMALARI |
Hafta |
Ön Hazırlık |
Konular |
Yöntem |
1 |
Yazılı Kaynaklar |
Yığın veri yapısına giriş |
Yüz Yüze Anlatım |
2 |
Yazılı Kaynaklar |
Yığın veri yapısının python dilinde kodlanması |
Yüz Yüze Anlatım |
3 |
Yazılı Kaynaklar |
Yığın veri yapısının python dilinde kodlanması |
Yüz Yüze Anlatım |
4 |
Yazılı Kaynaklar |
Yığın veri yapısının python dilinde kodlanması |
Yüz Yüze Anlatım |
5 |
Yazılı Kaynaklar |
Kuyruk, iki uçlu kuyruk ve öncelikli kuyruk veri yapıları |
Yüz Yüze Anlatım |
6 |
Yazılı Kaynaklar |
Kuyruk, iki uçlu kuyruk ve öncelikli kuyruk veri yapılarının python dilinde |
Yüz Yüze Anlatım |
7 |
Yazılı Kaynaklar |
Ağaç veri yapısına giriş |
Yüz Yüze Anlatım |
8 |
- |
ARA SINAV |
- |
9 |
Yazılı Kaynaklar |
Ağaç veri yapısının python dilinde kodlanması |
Yüz Yüze Anlatım |
10 |
Yazılı Kaynaklar |
İkili arama ağaçları yapısı ve bu yapının python ile kodlanması |
Yüz Yüze Anlatım |
11 |
Yazılı Kaynaklar |
Öbek veri yapısı ve bu yapının python ile kodlanması |
Yüz Yüze Anlatım |
12 |
Yazılı Kaynaklar |
Öbek Yapıları |
Yüz Yüze Anlatım |
13 |
Yazılı Kaynaklar |
Dengeli arama ağaçları |
Yüz Yüze Anlatım |
14 |
Yazılı Kaynaklar |
Çizge veri yapısına giriş |
Yüz Yüze Anlatım |
15 |
Yazılı Kaynaklar |
Çizge veri yapısının python ile kodlanması |
Yüz Yüze Anlatım |
16 |
- |
FİNAL |
- |
17 |
- |
FİNAL |
- |
KAYNAKLAR |
Data Structures and Program Design In C, Robert L. Kruse, Bruce P. Leung,
ve Clovis L. Tondo, Pearson, 1996
Goodrich, M. T., Tamassia, R., & Goldwasser, M. H. (2013). Data structures and algorithms in Python (pp. 978-1). Hoboken: Wiley. |
ÖLÇME VE DEĞERLENDİRME |
Yarıyıl İçi Yapılan Çalışmaların Ölçme ve Değerlendirmesi |
Etkinlik Sayısı |
Katkı Yüzdesi |
Açıklama |
(0) Etkisiz |
(1) En Düşük |
(2) Düşük |
(3) Orta |
(4) İyi |
(5) Çok İyi |
0 |
1 |
2 |
3 |
4 |
5 |
DERSİN PROGRAM ÖĞRENME ÇIKTILARINA KATKISI
KNOWLEDGE |
Theoretical |
|
Program Yeterlilikleri/Çıktıları |
Katkı Düzeyi |
0 |
1 |
2 |
3 |
4 |
5 |
1 |
Explains the fundamental engineering concepts of computer science and relates them to the groundwork of computer science.
|
|
|
|
3 |
|
|
KNOWLEDGE |
Factual |
|
Program Yeterlilikleri/Çıktıları |
Katkı Düzeyi |
0 |
1 |
2 |
3 |
4 |
5 |
1 |
Uses theoretical and practical knowledge coming from mathematics, probability, statistics and various other branches of life sciences, to find solutions to engineering problems.
|
|
|
|
3 |
|
|
SKILLS |
Cognitive |
|
Program Yeterlilikleri/Çıktıları |
Katkı Düzeyi |
0 |
1 |
2 |
3 |
4 |
5 |
1 |
Determines the components and the underlying process of a system and designs an appropriate computational model under reasonable constraints.
|
|
|
|
3 |
|
|
2 |
Designs a computer-aided conceptual model with modern techniques.
|
|
|
|
3 |
|
|
SKILLS |
Practical |
|
Program Yeterlilikleri/Çıktıları |
Katkı Düzeyi |
0 |
1 |
2 |
3 |
4 |
5 |
1 |
Determines, detects and analyzes the areas of computer science applications and develops appropriate solutions.
|
|
|
|
3 |
|
|
2 |
Identifies, models and solves computer engineering problems by applying appropriate analytical methods.
|
|
|
|
3 |
|
|
3 |
Determines and uses the necessary information technologies in an efficient way for engineering applications.
|
|
|
|
3 |
|
|
OCCUPATIONAL |
Autonomy & Responsibility |
|
Program Yeterlilikleri/Çıktıları |
Katkı Düzeyi |
0 |
1 |
2 |
3 |
4 |
5 |
1 |
Possess the responsibility and ability to design and conduct experiments for engineering problems by collecting, analyzing and interpreting data.
|
|
|
|
|
4 |
|
2 |
Possess the ability to conduct effective individual study.
|
|
|
|
3 |
|
|
3 |
Takes responsibility as a team work and contributes in an effective way.
|
|
|
|
3 |
|
|
OCCUPATIONAL |
Learning to Learn |
|
Program Yeterlilikleri/Çıktıları |
Katkı Düzeyi |
0 |
1 |
2 |
3 |
4 |
5 |
1 |
Monitors the developments in the field of information technologies by means of internet and related journals and possess the required knowledge for the management, control, development and security of information technologies.
|
|
|
|
3 |
|
|
2 |
Develops positive attitude towards lifelong learning.
|
|
|
|
3 |
|
|
OCCUPATIONAL |
Communication & Social |
|
Program Yeterlilikleri/Çıktıları |
Katkı Düzeyi |
0 |
1 |
2 |
3 |
4 |
5 |
1 |
Communicates effectively by oral and/or written form and uses at least one foreign language.
|
|
|
|
3 |
|
|
2 |
Possess sufficient consciousness about the issues of project management, practical applications and also environmental protection, worker's health and security.
|
|
|
|
|
4 |
|
OCCUPATIONAL |
Occupational and/or Vocational |
|
Program Yeterlilikleri/Çıktıları |
Katkı Düzeyi |
0 |
1 |
2 |
3 |
4 |
5 |
1 |
Possess professional and ethical responsibility and willingness to share it.
|
|
|
|
3 |
|
|
2 |
Possess sufficient consciousness about the universality of engineering solutions and applications and be well aware of the importance of innovation.
|
|
|
|
|
4 |
|
DERSİN İŞ YÜKÜ VE AKTS KREDİSİ |
Öğrenme-Öğretme Etkinlikleri İş Yükü |
Öğrenme-Öğretme Etkinlikleri |
Etkinlik(hafta sayısı) |
Süresi(saat sayısı) |
Toplam İş Yükü |
Ders |
14 |
5 |
70 |
Derse Ön Hazırlık ve Ders Sonrası Pekiştirme |
14 |
3 |
42 |
Arazi Çalışması |
0 |
0 |
0 |
Grup Çalışması / Ödevi |
0 |
0 |
0 |
Laboratuvar |
0 |
0 |
0 |
Okuma |
0 |
0 |
0 |
Ödev |
0 |
0 |
0 |
Proje Hazırlama |
0 |
0 |
0 |
Seminer |
0 |
0 |
0 |
Staj |
0 |
0 |
0 |
Teknik Gezi |
0 |
0 |
0 |
Web Tab. Öğrenme |
0 |
0 |
0 |
Uygulama |
0 |
0 |
0 |
Yerinde Uygulama |
0 |
0 |
0 |
Mesleki Faaliyet |
0 |
0 |
0 |
Sosyal Faaliyet |
0 |
0 |
0 |
Tez Hazırlama |
0 |
0 |
0 |
Alan Çalışması |
0 |
0 |
0 |
Rapor Yazma |
0 |
0 |
0 |
Final Sınavı |
1 |
1 |
1 |
Final Sınavı Hazırlığı |
5 |
4 |
20 |
Ara Sınav |
1 |
1 |
1 |
Ara Sınav Hazırlığı |
4 |
4 |
16 |
Kısa Sınav |
0 |
0 |
0 |
Kısa Sınav Hazırlığı |
0 |
0 |
0 |
TOPLAM |
39 |
0 |
150 |
|
Genel Toplam |
150 |
|
|
Toplam İş Yükü / 25.5 |
5,9 |
|
|
Dersin AKTS(ECTS) Kredisi |
6,0 |
|