Algoritma ve İleri Bilg. Programlama(ING231)
Ders Kodu | Dersin Adı | Yarıyıl | Teori | Uygulama | Lab | Kredisi | AKTS |
---|---|---|---|---|---|---|---|
ING231 | Algoritma ve İleri Bilg. Programlama | 3 | 2 | 0 | 2 | 3 | 5 |
Ön Koşul | |
Derse Kabul Koşulları |
Dersin Dili | Fransızca |
Türü | Zorunlu |
Dersin Düzeyi | Lisans |
Dersi Veren(ler) | Orhan İlker BAŞARAN oibasaran@gsu.edu.tr (Email) |
Dersin Yardımcıları | |
Dersin Amacı | Bu dersin amacı, öğrencilere bilgisayar dünyasında çok karşılaşılan bazı algoritmaların anlatılması, algoritmalar arası karşılaştırmaların yapılması ve anlatılan algoritmaların PYTHON ile programlarının yazılmasıdır. |
İçerik |
1. HAFTA: Genel Kavramlar: Rekürsif (Özyinelemeli) Algoritmalar Geri İzlemeli Algoritmalar Böl ve Yönet Algoritmaları Dinamik Programlama Algoritmaları Aç Gözlü Algoritmalar Kaba Kuvvet Algoritmaları Laboratuvar: PYTHON’a giriş Değişkenler, İfadeler ve Deyimler 2. HAFTA: Diziler Bağlantılı Listeler Dizilerle Bağlantılı Listelerin Karşılaştırılması Laboratuvar: Koşullu Durumlar ve İfadeler 3. HAFTA: Tek Yönlü Doğrusal Bağlantılı Liste Çift Yönlü Doğrusal Bağlantılı Liste Tek Yönlü Dairesel Bağlantılı Liste Çift Yönlü Dairesel Bağlantılı Liste Laboratuvar: Döngüler 4. HAFTA: Yığın ve Kuyruk Yapısı Dizilerle Yığının Gerçeklenmesi Bağlantılı Listelerle Yığının Gerçeklenmesi Laboratuvar: Fonksiyonlar 5. HAFTA: Dizilerle Kuyruğun Gerçeklenmesi Bağlantılı Listelerle Kuyruğun Gerçeklenmesi Laboratuvar: Listeler, Karakter Dizileri, Demetler ve Sözlükler 6. HAFTA: Kriptolojiye Giriş Sezar’ın Kutu Şifresi Tek Alfabeli Yerine Yerleştirme Kriptolama Algoritması Laboratuvar: Dosyalar ve Modüller 7. HAFTA: İki Alfabeli Yerine Yerleştirme Kriptolama Algoritması Sezar’ın Kutu Şifresinin İyileştirilmesi Vigenere Şifresi Laboratuvar: Hata Yakalama 8. HAFTA: Frekans Analizi Kırılamaz Şifre Şifreleme Algoritmalarının Karşılaştırılması Laboratuvar: Soru çözümü 9. HAFTA: Yarıyıl İçi Sınavı 10. HAFTA: Rekürsif Yapılar Araya Yerleştirme Sıralama Algoritması Seçmeli Sıralama Algoritması Kabarcık Sıralama Algoritması Laboratuvar: Nesne Tabanlı Programlamaya Giriş 11. HAFTA: Kokteyl Sıralama Algoritması Basit Sıralama Algoritması Gnome Sıralama Algoritması Sayma Sıralama Algoritması Laboratuvar: Nesne Tabanlı Programlamaya Giriş 12. HAFTA: Tek-Çift Yerdeğiştirme Sıralama Algoritması Hızlı Sıralama Algoritması Birleştirme Sıralama Algoritması Laboratuvar: Grafik Arayüz Uygulamaları 13. HAFTA: Hash Fonksiyonları Algoritma Analizi Büyük O Notasyonu Laboratuvar: Lineer Programlama Uygulamaları 14. HAFTA: Büyük O Notasyonunun Bulunmasına Ait Örnekler CPU ve RAM Kullanımı Konusunda Algoritmalar Arası Karşılaştırmalar Laboratuvar: Soru çözümü |
Dersin Öğrenme Çıktıları |
Bu dersi başarıyla tamamlayan öğrenci: 1.Algoritma kavramını öğrenecek ve algoritmaların performans analizini yapabilecektir. 2.Yığın yapısı, kuyruk yapısı, sıralama algoritmaları, temel kriptoloji algoritmaları, rekürsif algoritmalar gibi bilgisayar dünyasında çok karşılaşılan algoritmaları öğrenecektir. 3.Python programlama dilini kullanarak program yazmayı ve ders kapsamında verilen algoritmaların python ile programlamasını öğrenecektir. |
Öğretim Yöntemleri | |
Kaynaklar |
1. Algoritmalar, Robert Sedgewick, Kevin Wayne, Nobel Akademik Yayıncılık, 2018. 2. Algoritmalar ve Programlama, Anadolu Üniversitesi Açık Öğretim Fakültesi Yayınları, 2016. 3. Veri Yapıları ve Algoritma Temelleri, Dr. Sefer Kurnaz, Papatya Bilim, 2004. 4. Algoritma Geliştirme ve Veri Yapıları, Dr. Rifat Çölkesen, Papatya Bilim, 2016. 5. PYTHON, Mustafa Başer, Pusula Yayıncılık, 2002. 6. PYTHON, Fırat Özgül, Kodlab Yayıncılık, 2010. 7. Resmi Python3 Kılavuzu, Sürüm 3, Guido Van Rossum, Free Ebook, 2015. 8. Python İle Çocuklar İçin Programlama, Mustafa Murat Çoşkun, Dikeyeksen Yayıncılık, 2017. 9. Kod Kitabı, Simon Singh, Klan Yayınevi, 2004. 10. Şifrelerin Matematiği: Kriptografi, Canan Çimen, Sedat Akleylek, Ersan Akyıldız, ODTÜ Yayınevi, 2007. |
Teori Konu Başlıkları
Hafta | Konu Başlıkları |
---|---|
1 | Problem çözümü |
2 | Algoritmalar tarihi |
3 | Enküçükleme ve enbüyükleme |
4 | Sıralama ve arama |
5 | Saf matematik |
6 | İleri eniyileme |
7 | Geometri |
8 | Tekrar |
9 | Ara sınav |
10 | Dil |
11 | Makina öğrenmesi |
12 | Yapay zeka |
13 | Daha ileri konular |
14 | Tekrar |
Uygulama Konu Başlıkları
Hafta | Konu Başlıkları |
---|---|
1 | Problem çözümü |
2 | Algoritmalar tarihi |
3 | Enküçükleme ve enbüyükleme |
4 | Sıralama ve arama |
5 | Saf matematik |
6 | İleri eniyileme |
7 | Geometri |
8 | Tekrar |
9 | Ara sınav |
10 | Dil |
11 | Makina öğrenmesi |
12 | Yapay zeka |
13 | Daha ileri konular |
14 | Tekrar |
Başarı Notuna Etki Oranları
Sayı | Katkı Payı | |
---|---|---|
Yarıyıl içi çalışmaların başarı notuna katkısı | 1 | 50 |
Yarıyıl sonu çalışmaların başarı notuna katkısı | 1 | 50 |
Toplam | 2 | 100 |
Yarıyıl İçi Çalışmaları
Sayı | Katkı Payı | |
---|---|---|
Ödevler | 0 | 0 |
Sunum | 0 | 0 |
Arasınavlar (Hazırlık Süresi Dahil) | 1 | 50 |
Proje | 0 | 0 |
Laboratuar | 0 | 0 |
Diğer Uygulamalar | 0 | 0 |
Kısa Sınavlar | 0 | 0 |
Dönem Ödevi / Projesi | 0 | 0 |
Portfolyo Çalışmaları | 0 | 0 |
Raporlar | 0 | 0 |
Öğrenme Günlükleri | 0 | 0 |
Bitirme Tezi/Projesi | 0 | 0 |
Seminer | 0 | 0 |
Diğer | 0 | 0 |
Toplam | 1 | 50 |
Numara | Program Yeterlilikleri | Puan | ||||
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
1 | Matematik, fen ve mühendislik bilimleri konularında yeterli bilgi birikimi | X | ||||
2 | Bu alanlardaki kuramsal ve uygulamalı bilgileri karmaşık mühendislik problemlerini modelleme ve çözme için uygulayabilme becerisi | X | ||||
3 | Karmaşık Endüstri Mühendisliği problemlerini saptama, tanımlama, formüle etme, doğrulama ve çözme becerisi; bu amaçla uygun analiz ve modelleme yöntemlerini seçme ve uygulama becerisi | X | ||||
4 | Karmaşık bir üretim veya hizmet sistemini, süreci, cihazı veya ürünü gerçekçi ve değişken kısıtlar ve koşullar altında, performans boyutlarını iyileştirmeye yönelik tasarlama becerisi; bu amaçla modern tasarım yöntemlerini uygulama becerisi | X | ||||
5 | Endüstri Mühendisliği uygulamalarında karşılaşılan karmaşık problemlerin analizi ve çözümü için gerekli olan modern yöntem, teknik ve araçları geliştirme, seçme ve kullanma becerisi; bilişim teknolojilerini etkin bir şekilde kullanma becerisi | X | ||||
6 | Karmaşık Endüstri Mühendisliği problemlerinin veya bu alandaki araştırma konularının incelenmesi için deney tasarlama, deney yapma, veri toplama, sonuç çıkartma, sonuçları analiz etme ve yorumlama becerisi | |||||
7 | Disiplin içi ve çok disiplinli takımlarda etkin biçimde ve farklı rollerde çalışabilme becerisi; bireysel çalışma becerisi | X | ||||
8 | Türkçe sözlü ve yazılı etkin iletişim kurma becerisi; en az iki yabancı dil bilgisi; etkin rapor yazma ve yazılı raporları anlama, tasarım ve üretim raporları hazırlayabilme, etkin sunum yapabilme, açık ve anlaşılır talimat verme ve alma becerisi | |||||
9 | Yaşam boyu öğrenmenin gerekliliği bilinci; bilgiye erişebilme, bilim ve teknolojideki gelişmeleri izleme, bilgi yönetimi araçlarını kullanma ve kendini sürekli yenileme becerisi | |||||
10 | Etik ilkelerine uygun davranma, mesleki ve etik sorumluluk bilinci; Endüstri Mühendisliği uygulamalarında kullanılan ulusal ve/veya uluslararası standartlar hakkında bilgi | |||||
11 | Proje yönetimi ile risk yönetimi ve değişim yönetimi gibi, iş hayatındaki uygulamalar hakkında bilgi | |||||
12 | Girişimcilik, yenilikçilik hakkında farkındalık; sürdürülebilir kalkınma hakkında bilgi | |||||
13 | Endüstri Mühendisliği uygulamalarının evrensel ve toplumsal boyutlarda sağlık, çevre ve güvenlik üzerindeki etkileri hakkında bilgi; toplumsal ve kurumsal sosyal sorumluluk bilinci | |||||
14 | Çağın mühendislik alanına yansıyan sorunları hakkında bilgi | |||||
15 | Endüstri Mühendisliği çözümlerinin hukuksal sonuçları konusunda farkındalık |
Etkinlikler | Sayı | Süre | Toplam İş Yükü |
---|---|---|---|
Ders Süresi | 14 | 4 | 56 |
Sınıf Dışı Çalışma Süresi | 13 | 3 | 39 |
Arasınavlar (Hazırlık Süresi Dahil) | 1 | 10 | 10 |
Yarıyıl Sonu Sınavı (Hazırlık Süresi Dahil) | 1 | 18 | 18 |
Kısa Sınavlar | 2 | 5 | 10 |
Toplam İş Yükü | 133 | ||
Toplam İş Yükü / 25 | 5,32 | ||
Dersin AKTS Kredisi | 5 |