Algoritmalara Giriş 6.046J/18.401J

Ebat: px
Şu sayfadan göstermeyi başlat:

Download "Algoritmalara Giriş 6.046J/18.401J"

Transkript

1 Algoritmalara Giriş 6.046J/18.401J DERS 1 Algoritmaların Çözümlemesi Araya yerleştirme sıralaması Asimptotik çözümleme Birleştirme sıralaması Yinelemeler Prof. Charles E. Leiserson

2 Dersle ilgili bilgiler 1. Öğretim kadrosu. Uzaktan eğitim 3. Ön koşullar 4. Dersler 5. Etütler 6. Ders notları. Ders kitabı 8. Dersin WEB sitesi. Ek destek 10. Kayıt. Problem setleri. Algoritmaları tanımlamak. Not verme politikası 14. Ortak çalışma politikası September, 05 Introduction to Algorithms L1.

3 Algoritmaların çözümlemesi Bilgisayar program başarımı ve kaynak kullanımı konusunda teorik çalışmalar Başarımdan daha önemli ne vardır? modülerlik kullanıcı dostluğu doğruluk programcı zamanı bakım kolaylığı basitlik işlevsellik genişletilebilirlik sağlamlık güvenilirlik September, 05 Introduction to Algorithms L1.3

4 Neden algoritmalar ve başarımla uğraşırız? Algoritmalarla ölçeklenebilirlik anlaşılabilir. Başarım genelde yapılabilir olanla imkansızın arasındaki çizgiyi tanımlar. Algoritmik matematik program davranışlarını açıklamak için ortak dil oluşturur. Başarım bilgi işleme'nin para birimidir. Program başarımından alınan dersler diğer bilgi işleme kaynaklarına genellenebilir. Hız eğlencelidir! September, 05 Introduction to Algorithms L1.4

5 Sıralama (sorting) problemi Girdi: dizi a 1, a,, a n sayıları. Çıktı: permütasyon a' 1, a',, a' n öyle ki a' 1 a' a' n. Örnek: Girdi: Çıktı: September, 05 Introduction to Algorithms L1.5

6 Araya yerleştirme sıralaması (Insertion sort) pseudocode ( sözdekod ) INSERTION-SORT (A, n) A[1.. n] for j to n do key A[ j] i j 1 while i > 0 and A[i] > key do A[i+1] A[i] i i 1 A[i+1] = key (anahtar) September, 05 Introduction to Algorithms L1.6

7 Araya yerleştirme sıralaması (Insertion sort) pseudocode (sözde kod) INSERTION-SORT (A, n) A[1.. n] for j to n do key A[ j] i j 1 while i > 0 and A[i] > key do A[i+1] A[i] i i 1 A[i+1] = key A: 1 i j n key (anahtar) sorted (sıralı) September, 05 Introduction to Algorithms L1.

8 Araya yerleştirme sıralaması örneği September, 05 Introduction to Algorithms L1.8

9 Araya yerleştirme sıralaması örneği September, 05 Introduction to Algorithms L1.

10 Araya yerleştirme sıralaması örneği September, 05 Introduction to Algorithms L1.10

11 Araya yerleştirme sıralaması örneği September, 05 Introduction to Algorithms L1.

12 Araya yerleştirme sıralaması örneği September, 05 Introduction to Algorithms L1.

13 Araya yerleştirme sıralaması örneği September, 05 Introduction to Algorithms L1.

14 Araya yerleştirme sıralaması örneği September, 05 Introduction to Algorithms L1.14

15 Araya yerleştirme sıralaması örneği September, 05 Introduction to Algorithms L1.15

16 Araya yerleştirme sıralaması örneği September, 05 Introduction to Algorithms L1.16

17 Araya yerleştirme sıralaması örneği September, 05 Introduction to Algorithms L1.1

18 Araya yerleştirme sıralaması örneği (bitti) September, 05 Introduction to Algorithms L1.18

19 Koşma süresi (Running time) Koşma süresi girişe bağımlıdır: Önceden sıralanmış bir diziyi sıralamak daha kolaydır. Koşma süresinin girişin boyutuna göre parametrelenmesi yararlıdır, çünkü kısa dizileri sıralamak uzun dizilere oranla daha kolaydır. Genellikle, koşma süresinde üst sınırları ararız, çünkü herkes garantiden hoşlanır. September, 05 Introduction to Algorithms L1.1

20 Çözümleme türleri En kötü durum (Worst-case): (genellikle) T(n) = n boyutlu bir girişte algoritmanın maksimum süresi Ortalama durum: (bazen) T(n) = n boyutlu her girişte algoritmanın beklenen süresi. Girişlerin istatistiksel dağılımı için varsayım gerekli. En iyi durum: (gerçek dışı) Bir giriş yapısında hızlı çalışan yavaş bir algoritma ile hile yapmak. September, 05 Introduction to Algorithms L1.

21 Makineden-bağımsız zaman Araya yerleştirme sıralamasının en kötü zamanı nedir? Bilgisayarın hızına bağlıdır: bağıl ( rölatif ) zaman ( aynı makinede), mutlak (absolüt ) zaman (farklı makinelerde). BÜYÜK FİKİR: Makineye bağımlı sabitleri görmezden gel. n 'ayaklaştıkça, T(n)'nin büyümesine bak. " Asimptotik Çözümleme" September, 05 Introduction to Algorithms L1.1

22 Θ- simgelemi (notation) Matematik: Θ(g(n)) = { f (n):öyle c 1, c, n 0 pozitif sabit sayıları vardır ki tüm n n0} için 0 c 1 g(n) f (n) c g(n). Mühendislik: Düşük değerli terimleri at; ön sabitleri ihmal et. Örnek: 3n 3 + 0n 5n = Θ(n 3 ) September, 05 Introduction to Algorithms L1.

23 Asimptotik başarım T(n) n yeterince büyürse, Θ(n ) algoritması bir Θ(n 3 ) algoritmasından her zaman daha hızlıdır. n n 0 Öte yandan asimptotik açıdan yavaş algoritmaları ihmal etmemeliyiz. Gerçek dünyada tasarımın mühendislik hedefleriyle dikkatle dengelenmesi gereklidir. Asimptotik çözümleme düşüncemizi yapılandırmada önemli bir araçtır. September, 05 Introduction to Algorithms L1.3

24 Araya yerleştirme sıralaması çözümlemesi En kötü durum: Giriş tersten sıralıysa. T ( n) = n j= Θ( j) = Θ ( n ) Ortalama durum:tüm permutasyonlar eşit olasılıklı. T ( n) = n j= Θ( j / ) = Θ ( n ) [aritmetik seri] Araya yerleştirme sıralaması hızlı bir algoritma mıdır? Küçük n değerleri için olabilir. Büyük n değerleri için asla! September, 05 Introduction to Algorithms L1.4

25 Birleştirme sıralaması BİRLEŞTİRME-SIRALAMASI A[1.. n] 1. Eğer n = 1 ise, işlem bitti.. A[ 1.. n/ ]ve A[ n/ +1.. n ]'yi özyinelemeli sırala. 3. sıralanmış listeyi Birleştir. Anahtar altyordam: Birleştirme September, 05 Introduction to Algorithms L1.5

26 Sıralı iki dizilimi birleştirme 1 September, 05 Introduction to Algorithms L1.6

27 Sıralı iki dizilimi birleştirme 1 1 September, 05 Introduction to Algorithms L1.

28 Sıralı iki dizilimi birleştirme 1 1 September, 05 Introduction to Algorithms L1.8

29 Sıralı iki dizilimi birleştirme 1 1 September, 05 Introduction to Algorithms L1.

30 Sıralı iki dizilimi birleştirme 1 1 September, 05 Introduction to Algorithms L1.30

31 Sıralı iki dizilimi birleştirme 1 1 September, 05 Introduction to Algorithms L1.31

32 Sıralı iki dizilimi birleştirme 1 1 September, 05 Introduction to Algorithms L1.3

33 Sıralı iki dizilimi birleştirme 1 1 September, 05 Introduction to Algorithms L1.33

34 Sıralı iki dizilimi birleştirme 1 1 September, 05 Introduction to Algorithms L1.34

35 Sıralı iki dizilimi birleştirme 1 1 September, 05 Introduction to Algorithms L1.35

36 Sıralı iki dizilimi birleştirme 1 1 September, 05 Introduction to Algorithms L1.36

37 Sıralı iki dizilimi birleştirme 1 1 September, 05 Introduction to Algorithms L1.3

38 Sıralı iki dizilimi birleştirme 1 1 Süre = Θ(n), toplam n elemanı birleştirmek için (doğrusal zaman). September, 05 Introduction to Algorithms L1.38

39 Birleştirme sıralamasının çözümlenmesi Suistimal T(n) Θ(1) T(n/) Θ(n) BİRLEŞTİRME-SIRALAMASI A[1.. n] 1. Eğer n = 1'se, bitir.. Yinelemeli olarak A[ 1.. n/ ] ve A[ n/ +1.. n ]'yi sırala. 3. sıralı listeyi Birleştir Özensizlik: T( n/ ) + T( n/ ) olması gerekir, ama asimptotik açıdan bu önemli değildir. September, 05 Introduction to Algorithms L1.3

40 Birleştirme sıralaması için yineleme T(n) = Θ(1) eğer n = 1ise; T(n/) + Θ(n) eğer n > 1ise. Genellikle n'nin küçük değerleri için taban durumu ( base case ) olan T(n) = Θ(1) 'i hesaplara katmayacağız; ama bunu sadece yinelemenin asimptotik çözümünü etkilemiyorsa yapacağız.. Derste T(n)'nin üst sınırını bulmanın birkaç yolunu inceleyeceğiz. September, 05 Introduction to Algorithms L1.40

41 Yineleme ağacı T(n) = T(n/) + cn'yi çözün; burada c > 0 bir sabittir. September, 05 Introduction to Algorithms L1.41

42 Yineleme ağacı T(n) = T(n/) + cn'i çözün; burada c > 0 bir sabittir. T(n) September, 05 Introduction to Algorithms L1.4

43 Yineleme ağacı T(n) = T(n/) + cn'i çözün; burada c > 0 bir sabittir. cn T(n/) T(n/) September, 05 Introduction to Algorithms L1.43

44 Yineleme ağacı T(n) = T(n/) + cn'i çözün; burada c > 0 bir sabittir. cn cn/ cn/ T(n/4) T(n/4) T(n/4) T(n/4) September, 05 Introduction to Algorithms L1.44

45 Yineleme ağacı T(n) = T(n/) + cn'i çözün; burada c > 0 bir sabittir.'i cn cn/ cn/ cn/4 cn/4 cn/4 cn/4 Θ(1) September, 05 Introduction to Algorithms L1.45

46 Yineleme ağacı T(n) = T(n/) + cn'i çözün; burada c > 0 bir sabittir. cn cn/ cn/ h = lg n cn/4 cn/4 cn/4 cn/4 Θ(1) September, 05 Introduction to Algorithms L1.46

47 Yineleme ağacı T(n) = T(n/) + cn'i çözün; burada c > 0 bir sabittir. cn cn cn/ cn/ h = lg n cn/4 cn/4 cn/4 cn/4 Θ(1) September, 05 Introduction to Algorithms L1.4

48 Yineleme ağacı T(n) = T(n/) + cn'i çözün; burada c > 0 bir sabittir. cn cn cn/ cn/ cn h = lg n cn/4 cn/4 cn/4 cn/4 Θ(1) September, 05 Introduction to Algorithms L1.48

49 Yineleme ağacı T(n) = T(n/) + cn'i çözün; burada c > 0 bir sabittir. cn cn cn/ cn/ cn h = lg n cn/4 cn/4 cn/4 cn/4 cn Θ(1) September, 05 Introduction to Algorithms L1.4

50 Yineleme ağacı T(n) = T(n/) + cn'i çözün; burada c > 0 bir sabittir. cn cn cn/ cn/ cn h = lg n cn/4 cn/4 cn/4 cn/4 cn Θ(1) yaprak sayısı = n Θ(n) September, 05 Introduction to Algorithms L1.50

51 Yineleme ağacı T(n) = T(n/) + cn'i çözün; burada c > 0 bir sabittir. cn cn cn/ cn/ cn h = lg n cn/4 cn/4 cn/4 cn/4 cn Θ(1) yaprak sayısı = n Θ(n) Toplam = Θ(n lg n) September, 05 Introduction to Algorithms L1.51

52 Sonuçlar Θ(n lg n), Θ(n )'dan daha yavaş büyür. En kötü durumda, birleştirme sıralaması asimptotik olarak araya yerleştirme sıralamasından daha iyidir. Pratikte, birleştirme sıralaması araya yerleştirme sıralamasını n > 30 değerlerinde geçer. Bunu kendiniz deneyin! September, 05 Introduction to Algorithms L1.5

Algoritmalar. DERS 3 Böl ve Fethet(Divide and Conquer) İkili arama Sayı üstelleri Fibonacci sayıları Matriks çarpımı Strassen in algoritması

Algoritmalar. DERS 3 Böl ve Fethet(Divide and Conquer) İkili arama Sayı üstelleri Fibonacci sayıları Matriks çarpımı Strassen in algoritması Algoritmalar DERS 3 Böl ve Fethet(Divide and Conquer) İkili arama Sayı üstelleri Fibonacci sayıları Matriks çarpımı Strassen in algoritması September 14, 2005 Copyright 2001-5 Erik D. Demaine and Charles

Detaylı

Problem Set 1 Çözümler

Problem Set 1 Çözümler Algoritmalara Giriş Eylül 30, 2005 Massachusetts Institute of Technology 6.046J/18.410J Profesörler Erik D. Demaine ve Charles E. Leiserson Dağıtım 8 0J Professors Erik D. Demaine ve Charles E. Leiserson

Detaylı

ALGORİTMA ANALİZİ. Cumhuriyet Üniversitesi Bilgisayar Mühendisliği Bölümü

ALGORİTMA ANALİZİ. Cumhuriyet Üniversitesi Bilgisayar Mühendisliği Bölümü ALGORİTMA ANALİZİ Cumhuriyet Üniversitesi Bilgisayar Mühendisliği Bölümü 2 Temel Kavramlar Algoritma: Bir problemin çözümünü belirli bir zamanda çözmek için sonlu sayıdaki adım-adım birbirini takip eden

Detaylı

F(A, N, K) // A dizi; N, K integer if N<0 then return K; if A[N]>K then K = A[N]; return F(A, N-1, K);

F(A, N, K) // A dizi; N, K integer if N<0 then return K; if A[N]>K then K = A[N]; return F(A, N-1, K); 2009-2010 BAHAR DÖNEMİ MC 689 ALGORİTMA TASARIMI ve ANALİZİ I. VİZE ÇÖZÜMLERİ 1. a) Böl ve yönet (divide & conquer) tarzındaki algoritmaların genel özelliklerini (çalışma mantıklarını) ve aşamalarını kısaca

Detaylı

Algoritmalara Giriş Ekim 17, 2005 Massachusetts Institute of Technology Profesörler Erik D. Demaine ve Charles E. Leiserson Dağıtım 15.

Algoritmalara Giriş Ekim 17, 2005 Massachusetts Institute of Technology Profesörler Erik D. Demaine ve Charles E. Leiserson Dağıtım 15. Algoritmalara Giriş Ekim 17, 2005 Massachusetts Institute of Technology 6.046J/18.410J Profesörler Erik D. Demaine ve Charles E. Leiserson Dağıtım 15 Problem Seti 4 Okumalar: Bölüm 12 13 ve 18 Hem egzersizler

Detaylı

6.046J/18.401J DERS 7 Kıyım Fonksiyonu (Hashing I) Prof. Charles E. Leiserson

6.046J/18.401J DERS 7 Kıyım Fonksiyonu (Hashing I) Prof. Charles E. Leiserson Algoritmalara Giriş 6.046J/8.40J DERS 7 Kıyım Fonksiyonu (Hashing I) Doğrudan erişim tabloları Çarpışmaları ilmekleme ile çözmek Kıyım fonksiyonu seçimi Açık adresleme Prof. Charles E. Leiserson October

Detaylı

Algoritmalar. DERS 7 Dengeli Arama Ağaçları Kırmızı-siyah ağaçlar Kırmızı-siyah ağacın yüksekliği Rotation / Dönme Insertion / araya yerleştirme

Algoritmalar. DERS 7 Dengeli Arama Ağaçları Kırmızı-siyah ağaçlar Kırmızı-siyah ağacın yüksekliği Rotation / Dönme Insertion / araya yerleştirme Algoritmalar DERS 7 Dengeli Arama Ağaçları Kırmızı-siyah ağaçlar Kırmızı-siyah ağacın yüksekliği Rotation / Dönme Insertion / araya yerleştirme October 19, 2005 Copyright 2001-5 by Erik D. Demaine and

Detaylı

ELN1002 BİLGİSAYAR PROGRAMLAMA 2

ELN1002 BİLGİSAYAR PROGRAMLAMA 2 ELN1002 BİLGİSAYAR PROGRAMLAMA 2 SIRALAMA ALGORİTMALARI Sunu Planı Büyük O Notasyonu Kabarcık Sıralama (Bubble Sort) Hızlı Sıralama (Quick Sort) Seçimli Sıralama (Selection Sort) Eklemeli Sıralama (Insertion

Detaylı

Problem Seti 2 Çözümler

Problem Seti 2 Çözümler Algoritmalara Giriş Ekim 7, 2005 Massachusetts Institute of Technology 6.046J/18.410J Professors Erik D. Demaine ve Charles E. Leiserson Dağıtım 12 Problem Seti 2 Çözümler Problem 2-1. Bu (yaklaşık) sıralanmış

Detaylı

Yrd. Doç. Dr. Ümit ATİLA

Yrd. Doç. Dr. Ümit ATİLA Yrd. Doç. Dr. Ümit ATİLA Sıralama Bir grup veriyi azalan veya artan şekilde yerleştirme. Bilgisayar sistemleri için veri sıralama çok önemlidir. Sıralama işlemi, hem arama işlemlerini hem de bir grup veriyi

Detaylı

Selection Sort Insertion Sort

Selection Sort Insertion Sort Ozet Selection Sort Selection Sort Insertion Sort Linear Search.. Growth Rates. Implementation. Once dizinin en buyuk element ini bul ve bunu en son pozisyondaki element le degistir, daha sonra en buyuk

Detaylı

Algoritmaların Karşılaştırılması. Doç. Dr. Aybars UĞUR

Algoritmaların Karşılaştırılması. Doç. Dr. Aybars UĞUR Algoritmaların Karşılaştırılması Doç. Dr. Aybars UĞUR Giriş Bir programın performansı genel olarak programın işletimi için gerekli olan bilgisayar zamanı ve belleğidir. Bir programın zaman karmaşıklığı

Detaylı

Algoritmalar (MCS 401) Ders Detayları

Algoritmalar (MCS 401) Ders Detayları Algoritmalar (MCS 401) Ders Detayları Ders Adı Ders Kodu Dönemi Ders Saati Uygulama Saati Laboratuar Saati Kredi AKTS Algoritmalar MCS 401 Seçmeli 2 2 0 3 6 Ön Koşul Ders(ler)i Dersin Dili Dersin Türü

Detaylı

Alıştırma 1: Yineleme

Alıştırma 1: Yineleme Alıştırma 1: Yineleme Alıştırma 2: Yineleme H10->H2 çevrimini yapınız 7 2 1 3 2 1 1 1 2 0 Hafta 3: Yineleme Alıştırmaları(1) E1. (44/174) S değerini yineleme kullanarak hesap ediniz S = 1 + 2 + 3 + n Hafta3:

Detaylı

Algoritmalara Giriş 6.046J/18.401J

Algoritmalara Giriş 6.046J/18.401J Algoritmalara Giriş 6.046J/18.401J DERS 14 Yarışmacı Çözümleme Kendini Düzenleyen Listeler Öne Taşıma - Buluşsal Yaklaşım Öne Taşımanın Yarışmacı Çözümlemesi Prof. Charles E. Leiserson Kendini Düzenleyen

Detaylı

BİL-341 ALGORİTMALAR BÜYÜK O NOTASYONU AHMET ATAKAN 0904.01036. atakanahmet@hotmail.com KIRGIZİSTAN-TÜRKİYE MANAS ÜNİVERSİTESİ MÜHENDİSLİK FAKÜLTESİ

BİL-341 ALGORİTMALAR BÜYÜK O NOTASYONU AHMET ATAKAN 0904.01036. atakanahmet@hotmail.com KIRGIZİSTAN-TÜRKİYE MANAS ÜNİVERSİTESİ MÜHENDİSLİK FAKÜLTESİ BİL-341 ALGORİTMALAR BÜYÜK O NOTASYONU AHMET ATAKAN 0904.01036 atakanahmet@hotmail.com KIRGIZİSTAN-TÜRKİYE MANAS ÜNİVERSİTESİ MÜHENDİSLİK FAKÜLTESİ BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜMÜ BİŞKEK 2012 Ahmet Atakan

Detaylı

Dağıtık Sistemler CS5001

Dağıtık Sistemler CS5001 Dağıtık Sistemler CS5001 Th. Letschert Çeviri: Turgay Akbaş TH Mittelhessen Gießen University of Applied Sciences Biçimsel model nedir Biçimsel model matematiksel olarak tanımlanmış olan bir modeldir.

Detaylı

Algoritmalar ve Karmaşıklık

Algoritmalar ve Karmaşıklık Algoritmalar ve Karmaşıklık Ders 11 Algoritma Ayrık matematikte karşılaşılan bir çok problem sınıfı mevcuttur. Örneğin, verilen tamsayı grubu içindeki en büyük olanının bulunması, verilen bir kümenin bütün

Detaylı

Algoritma Geliştirme ve Veri Yapıları 1 Temel Algoritma Kavramları. Mustafa Kemal Üniversitesi

Algoritma Geliştirme ve Veri Yapıları 1 Temel Algoritma Kavramları. Mustafa Kemal Üniversitesi Algoritma Geliştirme ve Veri Yapıları 1 Temel Algoritma Kavramları Giriş 1) Algoritma geliştirme üzerine temel kavramlar 2) Veri modelleri 3) Veri yapıları 4) Algoritma veya yazılım şekilsel gösterimi

Detaylı

DOKUZ EYLÜL ÜNİVERSİTESİ MÜHENDİSLİK FAKÜLTESİ DEKANLIĞI DERS/MODÜL/BLOK TANITIM FORMU. Dersin Kodu: CME 2001

DOKUZ EYLÜL ÜNİVERSİTESİ MÜHENDİSLİK FAKÜLTESİ DEKANLIĞI DERS/MODÜL/BLOK TANITIM FORMU. Dersin Kodu: CME 2001 Dersi Veren Birim: Bilgisayar Mühendisliği Dersin Türkçe Adı: VERİ YAPILARI VE ALGORİTMALAR Dersin Orjinal Adı: DATA STRUCTURES AND ALGORITHMS Dersin Düzeyi:(Ön lisans, Lisans, Yüksek Lisans, Doktora)

Detaylı

Veri Yapıları ve Algoritmalar 2006-2007 2.dönem

Veri Yapıları ve Algoritmalar 2006-2007 2.dönem Veri Yapıları ve Algoritmalar 2006-2007 2.dönem Öğretim Elemanları: Dr. A. Şima Etaner-Uyar Dr. Gülşen Cebiroğlu-Eryiğit Dersle ilgili bilgiler Ders Kitabı Data Structures and Algorithms in Java, 4th Ed.,

Detaylı

Algoritma Analizi. Özelliklerinin analizi Algoritmanın çalışma zamanı Hafızada kapladığı alan

Algoritma Analizi. Özelliklerinin analizi Algoritmanın çalışma zamanı Hafızada kapladığı alan Karmaşıklık Giriş 1 Algoritma Analizi Neden algoritmayı analiz ederiz? Algoritmanın performansını ölçmek için Farklı algoritmalarla karşılaştırmak için Daha iyisi mümkün mü? Olabileceklerin en iyisi mi?

Detaylı

Algoritmalara Giriş 6.046J/18.401J

Algoritmalara Giriş 6.046J/18.401J Algoritmalara Giriş 6.046J/18.401J Ders 17 En kısa yollar I En kısa yolların özellikleri Dijkstra algoritması Doğruluk Çözümleme Enine arama Prof. Erik Demaine November 14, 005 Copyright 001-5 by Erik

Detaylı

VERİ YAPILARI DERS NOTLARI BÖLÜM 2 ALGORİTMA ANALİZİ. Yard. Doç. Dr. Deniz KILINÇ

VERİ YAPILARI DERS NOTLARI BÖLÜM 2 ALGORİTMA ANALİZİ. Yard. Doç. Dr. Deniz KILINÇ VERİ YAPILARI DERS NOTLARI BÖLÜM 2 ALGORİTMA ANALİZİ Yard. Doç. Dr. Deniz KILINÇ CELAL BAYAR ÜNİVERSİTESİ, YAZILIM MÜHENDİSLİĞİ 2015-2016 1. ALGORİTMA TANIMI Verilen herhangi bir sorunun çözümüne ulaşmak

Detaylı

Makine Öğrenmesi 3. hafta

Makine Öğrenmesi 3. hafta Makine Öğrenmesi 3. hafta Entropi Karar Ağaçları (Desicion Trees) ID3 C4.5 Sınıflandırma ve Regresyon Ağaçları (CART) Karar Ağacı Nedir? Temel fikir, giriş verisinin bir kümeleme algoritması yardımıyla

Detaylı

2 ALGORİTMA VE AKIŞ DİYAGRAMLARI

2 ALGORİTMA VE AKIŞ DİYAGRAMLARI İÇİNDEKİLER IX İÇİNDEKİLER 1 GİRİŞ 1 Kitabın Amacı 1 Algoritmanın Önemi 2 Bilgisayarın Doğuşu ve Kullanım Amaçları 3 Programlama Dili Nedir? 3 Entegre Geliştirme Ortamı (IDE) Nedir? 4 2 ALGORİTMA VE AKIŞ

Detaylı

Insertion Sort. (Sokuşturma Sıralaması)

Insertion Sort. (Sokuşturma Sıralaması) Insertion Sort (Sokuşturma Sıralaması) Bu sıralama Bubble Sort algoritmasının iyileştirilmiş biçimidir. Zaman karmaşası (time complexity) O(n 2 ) dir. Bu algoritmayı açıklayan basit bir örnek verebiliriz.

Detaylı

Textbook & References. Algorithms & Analysis. Baslica Amac. Problemin Cozumu. Amaclar. Ne ogrenecegiz. Problem Tanimlama & Belirleme

Textbook & References. Algorithms & Analysis. Baslica Amac. Problemin Cozumu. Amaclar. Ne ogrenecegiz. Problem Tanimlama & Belirleme Algorithms & Analysis Textbook & References 1.1 Introduction to Algorithms, 2 nd Ed. by Cormen, Leiserson, Rivest & Stein, MIT Press, 2001 OTHER REFERENCES -- The Design and Analysis of Computer Algorithms,

Detaylı

İnternet Programcılığı Öğr. Gör. Serkan AKSU PHP de Dizi-Değişkenler, Nesneler. Dizi Oluşturma. Tek Boyutlu Diziler

İnternet Programcılığı Öğr. Gör. Serkan AKSU  PHP de Dizi-Değişkenler, Nesneler. Dizi Oluşturma. Tek Boyutlu Diziler PHP de Dizi-Değişkenler, Nesneler Dizilerle ilgili örneklere geçmeden önce aşağıdaki tabloyu inceleyelim. Tabloda dizi kavramının mantığı açıklanmaktadır. Tablonun tamamını bir dizi olarak düşünün ve bu

Detaylı

Algoritma Analizi ve Büyük O Notasyonu. Şadi Evren ŞEKER YouTube: Bilgisayar Kavramları

Algoritma Analizi ve Büyük O Notasyonu. Şadi Evren ŞEKER YouTube: Bilgisayar Kavramları Algoritma Analizi ve Büyük O Notasyonu Şadi Evren ŞEKER YouTube: Bilgisayar Kavramları Algoritmaların Özellikleri Algoritmalar Input Girdi, bir kümedir, Output ÇıkF, bir kümedir (çözümdür) Definiteness

Detaylı

VERİ MADENCİLİĞİ (Sınıflandırma Yöntemleri) Yrd.Doç.Dr. Kadriye ERGÜN kergun@balikesir.edu.tr

VERİ MADENCİLİĞİ (Sınıflandırma Yöntemleri) Yrd.Doç.Dr. Kadriye ERGÜN kergun@balikesir.edu.tr VERİ MADENCİLİĞİ (Sınıflandırma Yöntemleri) Yrd.Doç.Dr. Kadriye ERGÜN kergun@balikesir.edu.tr Genel İçerik Veri Madenciliğine Giriş Veri Madenciliğinin Adımları Veri Madenciliği Yöntemleri Sınıflandırma

Detaylı

Algoritmalara Giriş Kasım 7, 2005 Massachusetts Institute of Technology Profesör Erik D. Demaine ve Charles E. Leiserson Dağıtım 22.

Algoritmalara Giriş Kasım 7, 2005 Massachusetts Institute of Technology Profesör Erik D. Demaine ve Charles E. Leiserson Dağıtım 22. Algoritmalara Giriş Kasım 7, 2005 Massachusetts Institute of Technology 6.046J/18.410J Profesör Erik D. Demaine ve Charles E. Leiserson Dağıtım 22 Problem Seti 7 Okumalar: Bölüm 15, 16.1 16.3, 22.1 ve

Detaylı

Özyineleme (Recursion)

Özyineleme (Recursion) Özyineleme tanımlamaları Özyineleme çağırma Tail özyineleme Nontail özyineleme Dolaylı (Indirect) özyineleme İçiçe (Nested) özyineleme Yrd.Doç.Dr. M. Ali Akcayol Kendi kendisini doğrudan veya dolaylı olarak

Detaylı

Veri Yapıları. for(i=1;i=0 && ekle<=d[k] ;k ) D[k+1]=D[k]; /* Geriye kaydırılıyor*/

Veri Yapıları. for(i=1;i<n;i++) { ekle=d[i]; for (k=i 1; k>=0 && ekle<=d[k] ;k ) D[k+1]=D[k]; /* Geriye kaydırılıyor*/ Program çalışma hızı; Belirlenen bir problemin çözümü için tasarlanan program kodunun görevini yerine getirmesi için gerekli zaman bilgisini veren bir ifadededir. Bellek Gereksinimi; Programın yürütülmesi

Detaylı

BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜM BAŞKANLIĞI DERS TANITIM BİLGİLERİ

BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜM BAŞKANLIĞI DERS TANITIM BİLGİLERİ BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜM BAŞKANLIĞI DERS TANITIM BİLGİLERİ Dersin Adı Kodu Sınıf / Y.Y. Ders Saati (T+U+L) Kredi AKTS PROGRAMLAMA BG-213 2/1 2+0+2 2+1 5 Dersin Dili : TÜRKÇE Dersin Seviyesi : LİSANS

Detaylı

Gezgin Satıcı Probleminin İkili Kodlanmış Genetik Algoritmalarla Çözümünde Yeni Bir Yaklaşım. Mehmet Ali Aytekin Tahir Emre Kalaycı

Gezgin Satıcı Probleminin İkili Kodlanmış Genetik Algoritmalarla Çözümünde Yeni Bir Yaklaşım. Mehmet Ali Aytekin Tahir Emre Kalaycı Gezgin Satıcı Probleminin İkili Kodlanmış Genetik Algoritmalarla Çözümünde Yeni Bir Yaklaşım Mehmet Ali Aytekin Tahir Emre Kalaycı Gündem Gezgin Satıcı Problemi GSP'yi Çözen Algoritmalar Genetik Algoritmalar

Detaylı

Algoritmalar, Akış Şemaları ve O() Karmaşıklık Notasyonu

Algoritmalar, Akış Şemaları ve O() Karmaşıklık Notasyonu Algoritmalar, Akış Şemaları ve O() Karmaşıklık Notasyonu Öğr. Gör. M. Ozan AKI r1.0 Algoritmalar (Algorithms) Algoritma, bir problemin çözümünü sağlayan ancak deneme-yanılma ve sezgisel çözüme karşıt bir

Detaylı

Algoritma Geliştirme ve Veri Yapıları 9 Ağaç Veri Modeli ve Uygulaması. Mustafa Kemal Üniversitesi

Algoritma Geliştirme ve Veri Yapıları 9 Ağaç Veri Modeli ve Uygulaması. Mustafa Kemal Üniversitesi Algoritma Geliştirme ve Veri Yapıları 9 Ağaç Veri Modeli ve Uygulaması Ağaç, verilerin birbirine sanki bir ağaç yapısı oluşturuyormuş gibi sanal olarak bağlanmasıyla elde edilen hiyararşik yapıya sahip

Detaylı

T.C. MALTEPE ÜNİVERSİTESİ MÜHENDİSLİK FAKÜLTESİ YAZILIM MÜHENDİSLİĞİ LİSANS PROGRAMI. 2011-12 Bahar Yarıyılı

T.C. MALTEPE ÜNİVERSİTESİ MÜHENDİSLİK FAKÜLTESİ YAZILIM MÜHENDİSLİĞİ LİSANS PROGRAMI. 2011-12 Bahar Yarıyılı T.C. MALTEPE ÜNİVERSİTESİ MÜHENDİSLİK FAKÜLTESİ YAZILIM MÜHENDİSLİĞİ LİSANS PROGRAMI 2011-12 Bahar Yarıyılı ALGORİTMA VE PROGRAMLAMA BİL 133 5 AKTS Kredisi 1. yıl 1. yarıyıl Lisans Zorunlu 4 saat/hafta

Detaylı

2.1 Bir Sınıfı Örneklerinden Öğrenme... 15 2.2 Vapnik-Chervonenkis (VC) Boyutu... 20 2.3 Olası Yaklaşık Doğru Öğrenme... 21

2.1 Bir Sınıfı Örneklerinden Öğrenme... 15 2.2 Vapnik-Chervonenkis (VC) Boyutu... 20 2.3 Olası Yaklaşık Doğru Öğrenme... 21 İçindekiler Önsöz İkinci Basım için Önsöz Türkçe Çeviri için Önsöz Gösterim xiii xv xvii xix 1 Giriş 1 1.1 Yapay Öğrenme Nedir?......................... 1 1.2 Yapay Öğrenme Uygulamalarına Örnekler...............

Detaylı

O NOTASYONU. Abdullah Gazi Emre DAĞLI 0804.01026

O NOTASYONU. Abdullah Gazi Emre DAĞLI 0804.01026 O NOTASYONU Abdullah Gazi Emre DAĞLI 0804.01026 Program Çalışma Hızı ve Bellek Gereksinimi Programın çalışma hızı karmaşıklıkla ifade edilir; bu kavram zaman birimiyle ifade edilmeyip doğrudan işlem adedi

Detaylı

BIP116-H14-1 BTP104-H014-1

BIP116-H14-1 BTP104-H014-1 VERİ YAPILARI VE PROGRAMLAMA (BIP116) Yazar: Doç.Dr.İ.Hakkı.Cedimoğlu SAKARYA ÜNİVERSİTESİ Adapazarı Meslek Yüksekokulu Bu ders içeriğinin basım, yayım ve satış hakları Sakarya Üniversitesi ne aittir.

Detaylı

ALGORİTMA ANALİZİ. Cumhuriyet Üniversitesi Bilgisayar Mühendisliği Bölümü

ALGORİTMA ANALİZİ. Cumhuriyet Üniversitesi Bilgisayar Mühendisliği Bölümü ALGORİTMA ANALİZİ Cumhuriyet Üniversitesi Bilgisayar Mühendisliği Bölümü 2 Özyinelemeler veya artık teknik Türkçeye girmiş olan rekürsiflik en çok duyulan fakat kullanımında zorluklar görülen tekniklerdendir.

Detaylı

Java, Python ve Ruby Dillerinin Performans Karşılaştırması

Java, Python ve Ruby Dillerinin Performans Karşılaştırması Java, Python ve Ruby Dillerinin Performans Karşılaştırması Çanakkale Onsekiz Mart Üniversitesi Mustafa ŞAHİN Akademik Bilişim 2007 1 Dillerin seçim nedeni Java, Pyton ve Ruby Programlama dillerinin popülerliği

Detaylı

PERMÜTASYON, KOMBİNASYON. Örnek: Örnek: Örnek:

PERMÜTASYON, KOMBİNASYON. Örnek: Örnek: Örnek: SAYMANIN TEMEL KURALLARI Toplama Kuralı : Sonlu ve ayrık kümelerin eleman sayılarının toplamı, bu kümelerin birleşimlerinin eleman sayısına eşittir. Mesela, sonlu ve ayrık iki küme A ve B olsun. s(a)=

Detaylı

VERİ YAPILARI VE PROGRAMLAMA (BTP104)

VERİ YAPILARI VE PROGRAMLAMA (BTP104) VERİ YAPILARI VE PROGRAMLAMA (BTP104) Yazar: Doç.Dr.İ.Hakkı.Cedimoğlu SAKARYA ÜNİVERSİTESİ Adapazarı Meslek Yüksekokulu Bu ders içeriğinin basım, yayım ve satış hakları Sakarya Üniversitesi ne aittir.

Detaylı

Algoritmalara Giriş Ekim 31, 2005 Massachusetts Institute of Technology Professors Erik D. Demaine ve Charles E. Leiserson Dağıtım 19.

Algoritmalara Giriş Ekim 31, 2005 Massachusetts Institute of Technology Professors Erik D. Demaine ve Charles E. Leiserson Dağıtım 19. Algoritmalara Giriş Ekim 31, 2005 Massachusetts Institute of Technology 6.046J/18.410J Professors Erik D. Demaine ve Charles E. Leiserson Dağıtım 19 Problem Seti 6 Okumalar: Bölüm 17 ve karşılaştırmalı

Detaylı

DOSYA ORGANİZASYONU. Çarpışma çözümleme yöntemleri ÖZLEM AYDIN TRAKYA ÜNİVERSİTESİ BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜMÜ

DOSYA ORGANİZASYONU. Çarpışma çözümleme yöntemleri ÖZLEM AYDIN TRAKYA ÜNİVERSİTESİ BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜMÜ DOSYA ORGANİZASYONU ÖZLEM AYDIN TRAKYA ÜNİVERSİTESİ BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜMÜ Çarpışma çözümleme yöntemleri Sunum planı Bağlantıları kullanarak çarpışmaların çözümlenmesi. Coalesced Hashing (Birleştirilmiş

Detaylı

ESKİŞEHİR OSMANGAZİ ÜNİVERSİTESİ

ESKİŞEHİR OSMANGAZİ ÜNİVERSİTESİ ESKİŞEHİR OSMANGAZİ ÜNİVERSİTESİ Mühendislik Mimarlık Fakültesi İnşaat Mühendisliği Bölümü E-Posta: ogu.ahmet.topcu@gmail.com Web: http://mmf.ogu.edu.tr/atopcu Bilgisayar Destekli Nümerik Analiz Ders notları

Detaylı

Bu materyallerden alıntı yapmak veya kullanım şartları hakkında bilgi almak için:

Bu materyallerden alıntı yapmak veya kullanım şartları hakkında bilgi almak için: MIT Açık Ders malzemeleri http://ocw.mit.edu 6.046J Algoritmalara Giriş, Güz 2005 Bu materyallerden alıntı yapmak veya kullanım şartları hakkında bilgi almak için: Erik Demaine ve Charles Leiserson, 6.046J

Detaylı

İÇİNDEKİLER İÇİNDEKİLER KODLAB

İÇİNDEKİLER İÇİNDEKİLER KODLAB İÇİNDEKİLER IX İÇİNDEKİLER 1 GİRİŞ 1 Kitabın Amacı 1 Algoritmanın Önemi 2 Bilgisayarın Doğuşu ve Kullanım Amaçları 3 Programlama Dili Nedir? 3 Entegre Geliştirme Ortamı (IDE) Nedir? 4 2 ALGORİTMA VE AKIŞ

Detaylı

Örnek 4: Örnek Özyinelemeli fonksiyon örneği Bölüm 9. C++ programlama dilinde Nesne ve sınıf

Örnek 4: Örnek Özyinelemeli fonksiyon örneği Bölüm 9. C++ programlama dilinde Nesne ve sınıf İçindekiler 1. Giriş... 1 1.2. c++ Programı Yapısı... 2 1.3.Using Direktifi... 5 Bölüm 2. Veri türleri, değişken kavramı, sabit ve değişken bildirimleri ve c++ da kullanımı 7 2.1. Temel veri türleri...

Detaylı

TURGUT ÖZAL ÜNİVERSİTESİ MÜHENDİSLİK FAKÜLTESİ BİLGİSAYAR MÜHENDİSLİĞİ. DERS TANITIM ve UYGULAMA BİLGİLERİ. Ders. Yarıyılı

TURGUT ÖZAL ÜNİVERSİTESİ MÜHENDİSLİK FAKÜLTESİ BİLGİSAYAR MÜHENDİSLİĞİ. DERS TANITIM ve UYGULAMA BİLGİLERİ. Ders. Yarıyılı TURGUT ÖZAL ÜNİVERSİTESİ MÜHENDİSLİK FAKÜLTESİ BİLGİSAYAR MÜHENDİSLİĞİ DERS TANITIM ve UYGULAMA BİLGİLERİ Dersin Adı Kodu Yarıyılı Ders (Saat/Hafta) Uygulama 3 Kredisi ECTS (Saat/Hafta) Veri Yapıları ve

Detaylı

BİLGİSAYAR PROGRAMLAMA Araş. Gör. Ahmet ARDAHANLI. Kafkas Üniversitesi Mühendislik Fakültesi

BİLGİSAYAR PROGRAMLAMA Araş. Gör. Ahmet ARDAHANLI. Kafkas Üniversitesi Mühendislik Fakültesi BİLGİSAYAR PROGRAMLAMA Araş. Gör. Ahmet ARDAHANLI Kafkas Üniversitesi Mühendislik Fakültesi Bu hafta? İki değişken değerinin yer değiştirilmesi (swapping) selection sort sıralama algoritması bubble sort

Detaylı

Yrd. Doç. Dr. Caner ÖZCAN

Yrd. Doç. Dr. Caner ÖZCAN Yrd. Doç. Dr. Caner ÖZCAN Derse Giriş Ders Web Sitesi: www.canerozcan.net Ofis Saatleri: Salı 11:00-13:00 Perşembe 15:30-17:30 ya da email ile randevu alınız: canerozcan@karabuk.edu.tr Kaynak Kitaplar:

Detaylı

ÜNİT E ÜNİTE GİRİŞ. Algoritma Mantığı. Algoritma Özellikleri PROGRAMLAMA TEMELLERİ ÜNİTE 3 ALGORİTMA

ÜNİT E ÜNİTE GİRİŞ. Algoritma Mantığı. Algoritma Özellikleri PROGRAMLAMA TEMELLERİ ÜNİTE 3 ALGORİTMA PROGRAMLAMA TEMELLERİ ÜNİTE 3 ALGORİTMA GİRİŞ Bilgisayarların önemli bir kullanım amacı, veri ve bilgilerin kullanılarak var olan belirli bir problemin çözülmeye çalışılmasıdır. Bunun için, bilgisayarlar

Detaylı

Örnek. Aşağıdaki veri setlerindeki X ve Y veri çiftlerini kullanarak herbir durumda X=1,5 için Y nin hangi değerleri alacağını hesaplayınız.

Örnek. Aşağıdaki veri setlerindeki X ve Y veri çiftlerini kullanarak herbir durumda X=1,5 için Y nin hangi değerleri alacağını hesaplayınız. Örnek Aşağıdaki veri setlerindeki X ve Y veri çiftlerini kullanarak herbir durumda X=1,5 için Y nin hangi değerleri alacağını hesaplayınız. i. ii. X 1 2 3 4 1 2 3 4 Y 2 3 4 5 4 3 2 1 Örnek Aşağıdaki veri

Detaylı

ENDÜSTRİ MÜHENDİSLİĞİ BÖLÜM BAŞKANLIĞI DERS TANITIM BİLGİLERİ

ENDÜSTRİ MÜHENDİSLİĞİ BÖLÜM BAŞKANLIĞI DERS TANITIM BİLGİLERİ ENDÜSTRİ MÜHENDİSLİĞİ BÖLÜM BAŞKANLIĞI DERS TANITIM BİLGİLERİ Dersin Adı Kodu Sınıf/Y.Y. Ders Saati Kredi AKTS (T+U+L) YÖNEYLEM ARAŞTIRMA İÇİN ALGORİTMALAR EN-312 3/I 3+0+0 3 5 Dersin Dili : Türkçe Dersin

Detaylı

Yazılım Nedir? 2. Yazılımın Tarihçesi 3. Yazılım Grupları 4 Sistem Yazılımları 4 Kullanıcı Yazılımları 5. Yazılımın Önemi 6

Yazılım Nedir? 2. Yazılımın Tarihçesi 3. Yazılım Grupları 4 Sistem Yazılımları 4 Kullanıcı Yazılımları 5. Yazılımın Önemi 6 ix Yazılım Nedir? 2 Yazılımın Tarihçesi 3 Yazılım Grupları 4 Sistem Yazılımları 4 Kullanıcı Yazılımları 5 Yazılımın Önemi 6 Yazılımcı (Programcı) Kimdir? 8 Yazılımcı Olmak 9 Adım Adım Yazılımcılık 9 Uzman

Detaylı

HACETTEPE ÜNİVERSİTESİ BAHAR DÖNEMİ

HACETTEPE ÜNİVERSİTESİ BAHAR DÖNEMİ Öğrenci Adı Soyadı: Öğrenci Numarası: S1 S2 S3 S4 S5 Toplam HACETTEPE ÜNİVERSİTESİ 2014-2015 BAHAR DÖNEMİ BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜMÜ BBM202 Algoritmalar 2. Ara Sınav 09.04.2015 Sınav Süresi: 90 dakika

Detaylı

13.Konu Reel sayılar

13.Konu Reel sayılar 13.Konu Reel sayılar 1. Temel dizi 2. Temel dizilerde toplama ve çarpma 3. Reel sayılar kümesi 4. Reel sayılar kümesinde toplama ve çarpma 5. Reel sayılar kümesinde sıralama 6. Reel sayılar kümesinin tamlık

Detaylı

Dr. Fatih AY Tel: 0 388 225 22 55 fatihay@fatihay.net www.fatihay.net

Dr. Fatih AY Tel: 0 388 225 22 55 fatihay@fatihay.net www.fatihay.net Bilgisayar Programlama Ders 9 Dr. Fatih AY Tel: 0 388 225 22 55 fatihay@fatihay.net www.fatihay.net Dizileri Fonksiyonlara Dizileri Fonksiyonlara Bir dizi argümanını fonksiyon içinde bir değer olarak kullanabilmek

Detaylı

ÜRETİM ÇİZELGELEME. Yrd. Doç. Dr. Pınar Mızrak Özfırat. Celal Bayar Üniversitesi Yayınları Yayın No: 0010

ÜRETİM ÇİZELGELEME. Yrd. Doç. Dr. Pınar Mızrak Özfırat. Celal Bayar Üniversitesi Yayınları Yayın No: 0010 ÜRETİM ÇİZELGELEME Yrd. Doç. Dr. Pınar Mızrak Özfırat Celal Bayar Üniversitesi Yayınları Yayın No: 0010 2013 Celal Bayar Üniversitesi Yönetim Kurulu'nun 2013/13 sayılı ve X no'lu kararı ile basılmıştır.

Detaylı

VERİ YAPILARI DERS NOTLARI BÖLÜM 1 GİRİŞ. Yard. Doç. Dr. Deniz KILINÇ

VERİ YAPILARI DERS NOTLARI BÖLÜM 1 GİRİŞ. Yard. Doç. Dr. Deniz KILINÇ VERİ YAPILARI DERS NOTLARI BÖLÜM 1 GİRİŞ Yard. Doç. Dr. Deniz KILINÇ CELAL BAYAR ÜNİVERSİTESİ, YAZILIM MÜHENDİSLİĞİ 2015-2016 1. DERS İÇERİĞİ VE KAYNAKLAR Veri Yapıları (VY) dersinde görülmesi muhtemel

Detaylı

ELN1002 BİLGİSAYAR PROGRAMLAMA 2

ELN1002 BİLGİSAYAR PROGRAMLAMA 2 ELN1002 BİLGİSAYAR PROGRAMLAMA 2 VERİ YAPILARI Sunu Planı Kendini-gösteren Yapılar Dinamik Bellek Tahsisi Bağlı Listeler Yığınlar Kuyruklar Ağaçlar 1 Veri Yapıları Şu ana kadar, diziler, matrisler ve yapılar

Detaylı

Web Madenciliği (Web Mining)

Web Madenciliği (Web Mining) Web Madenciliği (Web Mining) Hazırlayan: M. Ali Akcayol Gazi Üniversitesi Bilgisayar Mühendisliği Bölümü Konular Denetimli Öğrenmenin Temelleri Karar Ağaçları Entropi ID3 Algoritması C4.5 Algoritması Twoing

Detaylı

Algoritma ve Akış Diyagramları

Algoritma ve Akış Diyagramları Algoritma ve Akış Diyagramları Bir problemin çözümüne ulaşabilmek için izlenecek ardışık mantık ve işlem dizisine ALGORİTMA, algoritmanın çizimsel gösterimine ise AKIŞ DİYAGRAMI adı verilir 1 Akış diyagramları

Detaylı

DOKUZ EYLÜL ÜNİVERSİTESİ MÜHENDİSLİK FAKÜLTESİ DEKANLIĞI DERS/MODÜL/BLOK TANITIM FORMU. Dersin Kodu: CME 1001

DOKUZ EYLÜL ÜNİVERSİTESİ MÜHENDİSLİK FAKÜLTESİ DEKANLIĞI DERS/MODÜL/BLOK TANITIM FORMU. Dersin Kodu: CME 1001 Dersi Veren Birim: Bilgisayar Mühendisliği Dersin Türkçe Adı: ALGORİTMA VE PROGRAMLAMA I Dersin Orjinal Adı: ALGORITHMS AND PROGRAMMING I Dersin Düzeyi:(Ön lisans, Lisans, Yüksek Lisans, Doktora) Lisans

Detaylı

Mikroişlemcilerde Aritmetik

Mikroişlemcilerde Aritmetik Mikroişlemcilerde Aritmetik Mikroişlemcide Matematiksel Modelleme Mikroişlemcilerde aritmetik işlemler (toplama, çıkarma, çarpma ve bölme) bu iş için tasarlanmış bütünleşik devrelerle yapılır. Bilindiği

Detaylı

ÖZEL EGE LİSESİ FİBONACCİ DİZİLERİ YARDIMIYLA DEĞERİNİ HESAPLAYAN BİR FORMÜL

ÖZEL EGE LİSESİ FİBONACCİ DİZİLERİ YARDIMIYLA DEĞERİNİ HESAPLAYAN BİR FORMÜL ÖZEL EGE LİSESİ FİBONACCİ DİZİLERİ YARDIMIYLA DEĞERİNİ HESAPLAYAN BİR FORMÜL HAZIRLAYAN ÖĞRENCİ: Tilbe GÖKÇEL DANIŞMAN ÖĞRETMEN: Emel ERGÖNÜL İZMİR 2013 İÇİNDEKİLER 1. PROJENİN AMACI... 3 2. GİRİŞ... 3

Detaylı

Binary Search. (Yarılama) Bölüm Dizide Bir Öğe Arama

Binary Search. (Yarılama) Bölüm Dizide Bir Öğe Arama Bölüm 39 Binary Search (Yarılama) 39.1 Dizide Bir Öğe Arama İkil aramayı (yarılama yöntemi) sıralı veri kümelerinde sık sık kullanırız. Örneğin, sözlükte bir sözcüğü ararken, sözlüğün bütün sayfalarını

Detaylı

ENDÜSTRİ MÜHENDİSLİĞİ BÖLÜM BAŞKANLIĞI DERS TANITIM BİLGİLERİ

ENDÜSTRİ MÜHENDİSLİĞİ BÖLÜM BAŞKANLIĞI DERS TANITIM BİLGİLERİ ENDÜSTRİ MÜHENDİSLİĞİ BÖLÜM BAŞKANLIĞI DERS TANITIM BİLGİLERİ Dersin Adı Kodu Sınıf/Y.Y. Ders Saati Kredi AKTS (T+U+L) ŞEBEKE MODELLERİ EN-413 4/I 3+0+0 3 5 Dersin Dili : İngilizce Dersin Seviyesi : Lisans

Detaylı

Arama Algoritmaları. Doğrusal Arama ve Binary Arama

Arama Algoritmaları. Doğrusal Arama ve Binary Arama Arama Algoritmaları Doğrusal Arama ve Binary Arama Doğrusal Arama-Örnek Dizi (Array) sayilistesiiçerisindeki sayılar aşağıdaki gibidir: 17 23 5 11 2 29 3 11, verilen dizi içerisinde aranacaksa doğrusal

Detaylı

Zeki Optimizasyon Teknikleri

Zeki Optimizasyon Teknikleri Zeki Optimizasyon Teknikleri Ara sınav - 25% Ödev (Haftalık) - 10% Ödev Sunumu (Haftalık) - 5% Final (Proje Sunumu) - 60% - Dönem sonuna kadar bir optimizasyon tekniğiyle uygulama geliştirilecek (Örn:

Detaylı

1. Hafta SAYISAL ANALİZE GİRİŞ

1. Hafta SAYISAL ANALİZE GİRİŞ SAYISAL ANALİZ 1. Hafta SAYISAL ANALİZE GİRİŞ 1 AMAÇ Mühendislik problemlerinin çözümünde kullanılan sayısal analiz yöntemlerinin algoritmik olarak çözümü ve bu çözümlemelerin MATLAB ile bilgisayar ortamında

Detaylı

Dosya Sıkıştırma (File Compression) Kütük Organizasyonu 1

Dosya Sıkıştırma (File Compression) Kütük Organizasyonu 1 Dosya Sıkıştırma (File Compression) Kütük Organizasyonu İçerik Dosya sıkıştırma nedir? Dosya sıkıştırma yöntemleri nelerdir? Run-Length Kodlaması Huffman Kodlaması Kütük Organizasyonu 2 Dosya Sıkıştırma

Detaylı

ELN1001 BİLGİSAYAR PROGRAMLAMA I

ELN1001 BİLGİSAYAR PROGRAMLAMA I ELN1001 BİLGİSAYAR PROGRAMLAMA I DEPOLAMA SINIFLARI DEĞİŞKEN MENZİLLERİ YİNELEMELİ FONKSİYONLAR Depolama Sınıfları Tanıtıcılar için şu ana kadar görülmüş olan özellikler: Ad Tip Boyut Değer Bunlara ilave

Detaylı

Bilgisayar Mühendisliği. Bilgisayar Mühendisliğine Giriş 1

Bilgisayar Mühendisliği. Bilgisayar Mühendisliğine Giriş 1 Bilgisayar Mühendisliği Bilgisayar Mühendisliğine Giriş 1 Mühendislik Nedir? Mühendislik, bilim ve matematiğin yararlı cihaz ve sistemlerin üretimine uygulanmasıdır. Örn: Elektrik mühendisleri, elektronik

Detaylı

Uzaktan Algılama Teknolojileri

Uzaktan Algılama Teknolojileri Uzaktan Algılama Teknolojileri Ders 11 Hiperspektral Görüntülerde Kümeleme ve Sınıflandırma Alp Ertürk alp.erturk@kocaeli.edu.tr Sınıflandırma Sınıflandırma işleminin amacı, her piksel vektörüne bir ve

Detaylı

Algoritma ve Programlama I

Algoritma ve Programlama I SAKARYA ÜNİVERSİTESİ Algoritma ve Programlama I Hafta 1 Yrd. Doç. Dr. Cemil ÖZ Bu ders içeriğinin basım, yayım ve satış hakları Sakarya Üniversitesi ne aittir. "Uzaktan Öğretim" tekniğine uygun olarak

Detaylı

Yrd. Doç. Dr. Caner ÖZCAN

Yrd. Doç. Dr. Caner ÖZCAN Yrd. Doç. Dr. Caner ÖZCAN BAĞLI LİSTELER Bağlı listeler konusuna çalışmanın bazı faydaları var. Bağlı listeler gerçek programlarda kullanılabilecek bir veri yapısıdır. Bağlı listelerin güçlü ve zayıf yönlerini

Detaylı

Birliktelik Kuralları Analizi. Yard. Doç. Dr. Derya BİRANT Prof. Dr. Alp KUT

Birliktelik Kuralları Analizi. Yard. Doç. Dr. Derya BİRANT Prof. Dr. Alp KUT İş Zekası Çözümleri için i Çok Boyutlu Birliktelik Kuralları Analizi Yard. Doç. Dr. Derya BİRANT Prof. Dr. Alp KUT İçerik 1 Veri Madenciliği 2 Birliktelik Kuralları Analizi 3 Uygulama 4 Algoritma 5 Sonuçlar

Detaylı

Veri Yapıları. Yrd. Doç. Dr. Şadi Evren ŞEKER

Veri Yapıları. Yrd. Doç. Dr. Şadi Evren ŞEKER Veri Yapıları Yrd. Doç. Dr. Şadi Evren ŞEKER Not: Bu sunumun amacı, İstanbul Üniversitesi Bilgisayar Mühendisliği Bölümü, Bilgisayar Mühendisliğine Giriş Dersi için genel amaçlı veri yapıları hakkında

Detaylı

FEN BİLİMLERİ BÖLÜM BAŞKANLIĞI DERS TANITIM BİLGİLERİ

FEN BİLİMLERİ BÖLÜM BAŞKANLIĞI DERS TANITIM BİLGİLERİ FEN BİLİMLERİ BÖLÜM BAŞKANLIĞI DERS TANITIM BİLGİLERİ Dersin Adı Kodu Sınıf / Y.Y. Ders Saati (T+U+L) Kredi AKTS SAYISAL YÖNTEMLER FM-223 2 / 2.YY 2 2+0+0 4 Dersin Dili : Türkçe Dersin Seviyesi : Lisans

Detaylı

2013-2014 EĞİTİM ÖĞRETİM MÜNEVVER ÖZTÜRK ORTAOKULU II. DÖNEM BİLİŞİM TEKNOLOJİLERİ VE YAZILIM DERSİ DERS NOTLARI

2013-2014 EĞİTİM ÖĞRETİM MÜNEVVER ÖZTÜRK ORTAOKULU II. DÖNEM BİLİŞİM TEKNOLOJİLERİ VE YAZILIM DERSİ DERS NOTLARI 2013-2014 EĞİTİM ÖĞRETİM MÜNEVVER ÖZTÜRK ORTAOKULU II. DÖNEM BİLİŞİM TEKNOLOJİLERİ VE YAZILIM DERSİ DERS NOTLARI Bilgi BİLİŞİM TEKNOLOJİLERİ VE YAZILIM DERSİ (BTY) Türkiye de orta eğitimde bilgisayar eğitimi,

Detaylı

Algoritmalara Giriş Ekim 24, 2005 Massachusetts Institute of Technology Profesör Erik D. Demaine ve Charles E. Leiserson Dağıtım 16.

Algoritmalara Giriş Ekim 24, 2005 Massachusetts Institute of Technology Profesör Erik D. Demaine ve Charles E. Leiserson Dağıtım 16. Algoritmalara Giriş Ekim 24 2005 Massachusetts Institute of Technology 6.046J/18.410J Profesör Erik D. Demaine ve Charles E. Leiserson Dağıtım 16 Problem Seti 5 Okumalar: Bölüm 14 ve atlama listesi dağıtım.

Detaylı

Katlı Giriş Geçitleri

Katlı Giriş Geçitleri Katlı Giriş Geçitleri Eviriciler ve tamponlar tek-girişli geçit devresi için olasılıkları çıkartır. Tamponlamak yada evirmekten başka tek mantık sinyali ile daha fazla ne yapılabilir? Daha fazla mantık

Detaylı

Algoritmanın Hazırlanması

Algoritmanın Hazırlanması Algoritmanın Hazırlanması Algoritma, herhangi bir sorunun çözümü için izlenecek yol anlamına gelmektedir. Çözüm için yapılması gereken işlemler hiçbir alternatif yoruma izin vermeksizin sözel olarak ifade

Detaylı

3.3. İki Tabanlı Sayı Sisteminde Dört İşlem

3.3. İki Tabanlı Sayı Sisteminde Dört İşlem 3.3. İki Tabanlı Sayı Sisteminde Dört İşlem A + B = 2 0 2 1 (Elde) A * B = Sonuç A B = 2 0 2 1 (Borç) A / B = Sonuç 0 + 0 = 0 0 0 * 0 = 0 0 0 = 0 0 0 / 0 = 0 0 + 1 = 1 0 0 * 1 = 0 0 1 = 1 1 0 / 1 = 0 1

Detaylı

PROGRAMLAMAYA GİRİŞ. Öğr. Gör. Ayhan KOÇ. Kaynak: Algoritma Geliştirme ve Programlamaya Giriş, Dr. Fahri VATANSEVER, Seçkin Yay.

PROGRAMLAMAYA GİRİŞ. Öğr. Gör. Ayhan KOÇ. Kaynak: Algoritma Geliştirme ve Programlamaya Giriş, Dr. Fahri VATANSEVER, Seçkin Yay. PROGRAMLAMAYA GİRİŞ Öğr. Gör. Ayhan KOÇ Kaynak: Algoritma Geliştirme ve Programlamaya Giriş, Dr. Fahri VATANSEVER, Seçkin Yay., 2007 Algoritma ve Programlamaya Giriş, Ebubekir YAŞAR, Murathan Yay., 2011

Detaylı

ÖZEL ÖĞRETİM KURSU MATEMATİK-III ÇERÇEVE PROGRAMI. : Kesikkapı Mah. Atatürk Cad. No 79 Fethiye /MUĞLA

ÖZEL ÖĞRETİM KURSU MATEMATİK-III ÇERÇEVE PROGRAMI. : Kesikkapı Mah. Atatürk Cad. No 79 Fethiye /MUĞLA ÖZEL ÖĞRETİM KURSU MATEMATİK-III ÇERÇEVE PROGRAMI 1.KURUMUN ADI 2.KURUMUN ADRESİ 3.KURUCUNUN ADI :Tercih Özel Öğretim Kursu : Kesikkapı Mah. Atatürk Cad. No 79 Fethiye /MUĞLA : ARTI ÖZEL EĞİTİM ÖĞRETİM

Detaylı

127 - Twoing Algoritması ile Sınıflandırma Kalp Hastalığı Uygulaması MEHMET AKİF ERSOY ÜNİVERSİTESİ İLHAN UYSAL MEHMET BİLEN SAMİ ULUKUŞ

127 - Twoing Algoritması ile Sınıflandırma Kalp Hastalığı Uygulaması MEHMET AKİF ERSOY ÜNİVERSİTESİ İLHAN UYSAL MEHMET BİLEN SAMİ ULUKUŞ 127 - Twoing Algoritması ile Sınıflandırma Kalp Hastalığı Uygulaması MEHMET AKİF ERSOY ÜNİVERSİTESİ İLHAN UYSAL MEHMET BİLEN SAMİ ULUKUŞ Veri Madenciliği : Bir sistemin veri madenciliği sistemi olabilmesi

Detaylı

Dr. Musa KILIÇ Öğretim Görevlisi http://kisi.deu.edu.tr/musa.kilic

Dr. Musa KILIÇ Öğretim Görevlisi http://kisi.deu.edu.tr/musa.kilic Dr. Musa KILIÇ Öğretim Görevlisi http://kisi.deu.edu.tr/musa.kilic BİLGİSAYAR DONANIM Donanım birimleri ekran, klavye, harddisk, ram YAZILIM Yazılımlar ise bilgisayarın donanım yapısını kullanılır hale

Detaylı

Ders Adı Kodu Yarıyılı T+U Saati Ulusal Kredisi AKTS

Ders Adı Kodu Yarıyılı T+U Saati Ulusal Kredisi AKTS DERS BİLGİLERİ Ders Adı Kodu Yarıyılı T+U Saati Ulusal Kredisi AKTS Otoma Teorisi Ve Biçimsel Diller BIL445 7 3+0 3 4 Ön Koşul Dersleri Yok Dersin Dili Dersin Seviyesi Dersin Türü Türkçe Lisans Zorunlu

Detaylı

BİLGİSAYAR PROGRAMCISI

BİLGİSAYAR PROGRAMCISI TANIM Değişik konularda ve çok miktardaki bilgiyi, bilgisayar ortamında hızlı ve sistematik bir biçimde çözümlemek ve değerlendirebilmek amacı ile program yazan kişidir. A- GÖREVLER - Bilgilerin bilgisayarda

Detaylı

Mantıksal çıkarım yapmak. 9 ve üzeri

Mantıksal çıkarım yapmak. 9 ve üzeri Aktivite 6 Savaş gemileri Arama algoritmaları Özet Bilgisayarların sıklıkla bir yığın verinin içerisinde bilgi bulmaları gerekir. Hızlı ve verimli yöntemler kullanarak bunu becerirler. Bu aktivitede 3

Detaylı

Bilgi Güvenliği Eğitim/Öğretimi

Bilgi Güvenliği Eğitim/Öğretimi Bilgi Güvenliği Eğitim/Öğretimi İbrahim SOĞUKPINAR Gebze Yüksek Teknoloji Enstitüsü İçerik Bilgi Güvenliği Eğitim/Öğretimi Dünyadaki Örnekler Türkiye deki Örnekler GYTE de Bilgi Güvenliği Dersi Sonuç ve

Detaylı

AKSARAY KANUNİ ANADOLU İMAM HATİP LİSESİ 2015-2016 EĞİTİM ÖĞRETİM YILI MATEMATİK DERSİ 11.SINIFLAR ÜNİTELENDİRİLMİŞ YILLIK PLANI TEKNİKLER

AKSARAY KANUNİ ANADOLU İMAM HATİP LİSESİ 2015-2016 EĞİTİM ÖĞRETİM YILI MATEMATİK DERSİ 11.SINIFLAR ÜNİTELENDİRİLMİŞ YILLIK PLANI TEKNİKLER AKSARAY KANUNİ ANADOLU İMAM HATİP LİSESİ 015-01 EĞİTİM ÖĞRETİM YILI MATEMATİK DERSİ 11.SINIFLAR ÜNİTELENDİRİLMİŞ YILLIK PLANI SÜRE: MANTIK(30) ÖNERMELER VE BİLEŞİK ÖNERMELER(18) 1. Önermeyi, önermenin

Detaylı

C Dersleri Bölüm 3 : Program akışı

C Dersleri Bölüm 3 : Program akışı İzmir Ekonomi Üniversitesi Bilgisayar Topluluğu www.ieubt.org C Dersleri Bölüm 3 : Program akışı Sorularınız için : programlama@ieubt.org Hazırlayan : Görkem PAÇACI (gorkem.pacaci@std.ieu.edu.tr) C Program

Detaylı

Week 9: Trees 1. TREE KAVRAMI 3. İKİLİ AĞAÇ DİZİLİMİ 4. İKİLİ ARAMA AĞACI 2. İKİLİ AĞAÇ VE SUNUMU > =

Week 9: Trees 1. TREE KAVRAMI 3. İKİLİ AĞAÇ DİZİLİMİ 4. İKİLİ ARAMA AĞACI 2. İKİLİ AĞAÇ VE SUNUMU > = Week 9: Trees 1. TREE KAVRAMI 2. İKİLİ AĞAÇ VE SUNUMU 3. İKİLİ AĞAÇ DİZİLİMİ 4. İKİLİ ARAMA AĞACI < 6 2 > = 1 4 8 9 1. TREES KAVRAMI Bir ağaç bir veya daha fazla düğümün (T) bir kümesidir : Spesifik olarak

Detaylı