NİŞANTAŞI ÜNİVERSİTESİ

Slides:



Advertisements
Benzer bir sunumlar
Algoritma.  Algoritma, belirli bir görevi yerine getiren sonlu sayıdaki işlemler dizisidir.  Başka bir deyişle; bir sorunu çözebilmek için gerekli olan.
Advertisements

Beşinci hafta. Müfredat programı Ödev teslim Projelerini teslim edenler; Belediye Projesi -> Tamam Ulaşım Projesi -> Geldi ama kavramsal tasarım yerine.
Hat Dengeleme.
İşaret, fiziksel bir olayda mevcut olan bağımsız değişkenlerle, bu değişkenler arası ilişkinin matematiksel anlamda karşılığı olarak tanımlanabilir. İşaretler.
Atalet, maddenin, hareketteki değişikliğe karşı direnç gösterme özelliğidir.
BİLGİSAYAR PROGRAMLAMA Ders 11: İşaretçi (Pointer) Kullanımı Yrd. Doç. Dr. Altan MESUT Trakya Üniversitesi Bilgisayar Mühendisliği.
TC Windows Editörü DevC++. KURULUM PROGRAMIN KURULACAĞI YER BURADA BELİRLENİYOR.
BSE 207 Mantık Devreleri Sayı sistemleri Sakarya Üniversitesi.
Yazılım Mühendisliği1[ 3.hft ]. Yazılım Mühendisliği2 Yazılım İ sterlerinin Çözümlemesi Yazılım Yaşam Çevrimi “ Yazılım Yaşam çevrimin herhangi bir yazılım.
ÇOK BOYUTLU SİNYAL İŞLEME
Bölüm 3 : Yapay Sinir Ağları (MatLab) Artificial Neural Network
BİLGİSAYAR PROGRAMLAMA DERSİ
Sıklık Dağılımları Yrd. Doç. Dr. Emine Cabı.
PROGRAMLAMAYA GİRİŞ VE ALGORİTMA
TAM SAYILAR.
Tüm ikililer arasında en kısa yollar
DENEYSEL TERTİPLER VE PAZAR DENEMESİ
Veri Yapıları ve Algoritmalar
MİKROEKONOMİ YRD. DOÇ. DR. ÇİĞDEM BÖRKE TUNALI
BİLGİSAYAR PROGRAMLAMA Ders 5: Döngüler
Ünite 8: Olasılığa Giriş ve Temel Olasılık Hesaplamaları
İleri Algoritma Analizi
İleri Algoritma Analizi
Teknolojİ ve tasarIm dersİ
BİYOİNFORMATİK NEDİR? BİYOİNFORMATİKTE KULLANILAN SINIFLAMA YÖNTEMLERİ
TEKNOLOJİ VE TASARIM DERSİ
STORAGE BÜŞRA KARADENİZ
Bilgisayar Mühendisliğine Giriş
ŞEKİLLER.
Meriç ÇETİN Pamukkale Üniversitesi Bilgisayar Mühendisliği Bölümü
İleri Algoritma Analizi
NİŞANTAŞI ÜNİVERSİTESİ
MİKROİŞLEMCİLER VE MİKROBİLGİSAYARLAR
NİŞANTAŞI ÜNİVERSİTESİ
NİŞANTAŞI ÜNİVERSİTESİ
NİŞANTAŞI ÜNİVERSİTESİ
Doğrusal Mantık Yapısı İle Problem Çözme
PROGRAMLAMAYA GİRİŞ VE ALGORİTMA
Evren-Örneklem, Örnekleme Yöntemleri 2
NİŞANTAŞI ÜNİVERSİTESİ
NİŞANTAŞI ÜNİVERSİTESİ
Bilgisayar Bilimi Koşullu Durumlar.
NİŞANTAŞI ÜNİVERSİTESİ
Bilgisayar Mühendisliğine Giriş
BÖLÜM X FİYATLANDIRMA.
NİŞANTAŞI ÜNİVERSİTESİ
6. DÖNGÜ (TEKRARLAMA) DEYİMLERİ
NİŞANTAŞI ÜNİVERSİTESİ
MAK212-SAYISAL YÖNTEMLER Sayısal Türev ve İntegral
NİŞANTAŞI ÜNİVERSİTESİ
NİŞANTAŞI ÜNİVERSİTESİ
NİŞANTAŞI ÜNİVERSİTESİ
NİŞANTAŞI ÜNİVERSİTESİ
NİŞANTAŞI ÜNİVERSİTESİ
NİŞANTAŞI ÜNİVERSİTESİ
NİŞANTAŞI ÜNİVERSİTESİ
NİŞANTAŞI ÜNİVERSİTESİ
Veri ve Türleri Araştırma amacına uygun gözlenen ve kaydedilen değişken ya da değişkenlere veri denir. Olgusal Veriler Yargısal Veriler.
NİŞANTAŞI ÜNİVERSİTESİ
NİŞANTAŞI ÜNİVERSİTESİ
NİŞANTAŞI ÜNİVERSİTESİ
NİŞANTAŞI ÜNİVERSİTESİ
NİŞANTAŞI ÜNİVERSİTESİ
Sermaye Maliyeti Sermaye maliyeti; kullanılan veya kullanılması planlanan her çeşit kaynağın, maliyetlerinin ağırlıkları dikkate alınarak ortalamasının.
TYS102 ÖLÇME BİLGİSİ Yrd. Doç. Dr. N. Yasemin EMEKLİ
NİŞANTAŞI ÜNİVERSİTESİ
RASTGELE DEĞİŞKENLER Herhangi bir özellik bakımından birimlerin almış oldukları farklı değerlere değişken denir. Rastgele değişken ise tanım aralığında.
Bilimsel Araştırma Yöntemleri
NİŞANTAŞI ÜNİVERSİTESİ
Sunum transkripti:

NİŞANTAŞI ÜNİVERSİTESİ Veri Yapıları ve Algoritmalar DERS 1 NİŞANTAŞI ÜNİVERSİTESİ © Mühendislik Mimarlık Fakültesi mmf.nisantasi.edu.tr

YBLG202 Veri Yapıları ve Algoritmalar DERS 1 ALGORİTMALAR, ZAMAN KARMAŞIKLIĞI NİŞANTAŞI ÜNİVERSİTESİ ©

AlgoritmaLAR, Zaman KarmaşıklıĞI Algoritma, bir problemin çözümünü sağlayan ancak deneme-yanılma ve sezgisel çözüme karşıt bir yöntemdir. (V. Nabiyev). Problemin çözümü için yapılması gereken işlemleri adım adım ve sırasıyla açıklar. Algoritmalar, herhangi programlama diline bağımlı değildir. Bu nedenle Pseudo Code olarak yazılırlar. Algoritmayı tanımlamak veya veriler arasındaki ilişkileri göstermek amacıyla kabul görmüş standartlar; o Kaba-kod ile tanımlama o Akış şeması o N-S (Nassi-Schnederman) şemaları Pseudo Code, herhangi programlama dili için geçersiz, ancak konuşma diline yakın, işlemleri açıkça tanımlayan komutlar olarak tanımlanabilir. NİŞANTAŞI ÜNİVERSİTESİ ©

AlgoritmaLAR, Zaman KarmaşıklıĞI Akış Şemaları Akış şeması, algoritmanın görsel/şekilsel olarak ortaya konulmasıdır; problemin çözümü için yapılması gerekenleri başından sonuna kadar geometrik şekillerden oluşan simgelerle gösterir. Her simge genel olarak yapılacak bir işi veya komutu gösterir. NİŞANTAŞI ÜNİVERSİTESİ ©

AlgoritmaLAR, Zaman KarmaşıklıĞI N-S(Nassi-Schnederman) Şemaları Bu yapıda gösterimlerim tamamı bir dikdörtgen içine yapılır. Program akışı en üstten başlar ve aşağıya doğru ilerler. Dikdörtgenler kendi içerisinde, karşılaştırma işlemleri sonucu parçalara ayrılabilmektedir. N-S şeması, doğrudan yapısal tabanlı program tasarımı için uygundur denilebilir; herhangi bir noktadan uzaktaki bir program satırına dallanma yapacak goto benzeri bir davranışın karşılığı bir yapı yoktur. Dolayısıyla C gibi yapısal programlama dilleriyle tasarlanacak programların ön tasarımında kullanılabilir. NİŞANTAŞI ÜNİVERSİTESİ ©

AlgoritmaLAR, Zaman KarmaşıklıĞI N-S(Nassi-Schnederman) Şemaları NİŞANTAŞI ÜNİVERSİTESİ ©

AlgoritmaLAR, Zaman KarmaşıklıĞI Algoritma Karmaşıklığı X'in bir algoritma, n'nin girdi verisinin boyutu olduğunu, X algoritması tarafından kullanılan zaman ve bellek alanının X'in verimliliğini belirleyen iki ana faktör olduğunu varsayalım. Zaman Faktörü - Zaman, kilit işlem sayısını sayarak ölçülür. Bellek Alanı Faktörü - Alan, algoritma tarafından gerekli olan maksimum bellek alanını sayarak ölçülür Bir algoritmanın karmaşıklığı f (n), çalışma süresini ve / veya depolama alanını verir. algoritma tarafından girilen verinin boyutu n cinsinden verilir. NİŞANTAŞI ÜNİVERSİTESİ ©

AlgoritmaLAR, Zaman KarmaşıklıĞI Alan Karmaşıklığı Bir algoritmanın alan karmaşıklığı, algoritmanın ömrü boyunca gerekli olan bellek alanının miktarını temsil eder. Bir algoritma tarafından gerekli alan aşağıdaki iki bileşenin toplamına eşittir Sorunun boyutundan bağımsız olarak belirli verileri ve değişkenleri depolamak için gereken alan olan sabit bir parça. Örneğin, kullanılan basit değişkenler ve sabitler, program boyutu, vb. Değişken bölüm, boyutunun sorunun boyutuna bağlı olduğu değişkenlerin gerektirdiği boşluktur. Örneğin, dinamik bellek ayırma, özyinelemeli yığın alanı vb. Herhangi bir algoritmasının (P) uzay karmaşıklığı S (P), S (P) = C + SP (I), burada C sabit kısımdır ve S örnekteki karakteristik I'e bağlı olan algoritmanın bir parçası. NİŞANTAŞI ÜNİVERSİTESİ ©

AlgoritmaLAR, Zaman KarmaşıklıĞI Bir algoritmanın zaman karmaşıklığı, algoritmanın tamamlanması için gerekli süreyi temsil eder. Zaman gereksinimleri, her adımın sabit bir süre kullanması koşuluyla, T (n) basamak sayısı olarak ölçülebilen sayısal bir fonksiyon T (n) olarak tanımlanabilir. Örneğin, iki n-bitlik tam sayı eklenmesi, n basamak alır. Sonuç olarak toplam hesaplama zamanı T (n) = c * n 'dir, burada c iki bit eklenmesi için gereken zamandır. Burada, girdi boyutu arttıkça T (n) 'nin doğrusal olarak büyüdüğünü gözlemliyoruz. Genellikle, bir algoritmanın gerektirdiği süre üç durum için ele alınır En İyi Durum - Program yürütülmesi için gereken minimum süre. Ortalama Vaka - Program yürütülmesi için gerekli olan ortalama süre. En Kötü Durum - Program yürütülmesi için gereken maksimum süre. NİŞANTAŞI ÜNİVERSİTESİ ©

AlgoritmaLAR, Zaman KarmaşıklıĞI Asimtotik Yaklaşım Bir algoritmanın çalışma süresi karmaşıklığını hesaplamak için sıklıkla kullanılan asimtotik gösterimler aşağıda belirtilmiştir. Ο Gösterim Ω Gösterim θ Gösterimi NİŞANTAŞI ÜNİVERSİTESİ ©

AlgoritmaLAR, Zaman KarmaşıklıĞI «Big O(N)» Gösterimi Ο (n) gösterimi bir algoritmanın çalışma süresinin üst sınırını ifade etmenin resmi yoludur. En kötü durum zaman karmaşıklığını veya bir algoritmanın tamamlanması için muhtemel en uzun süreyi ölçer. NİŞANTAŞI ÜNİVERSİTESİ ©

YBLG202 Veri Yapıları ve Algoritmalar Kaynakça NİŞANTAŞI ÜNİVERSİTESİ ©

NİŞANTAŞI ÜNİVERSİTESİ © KAYNAKÇA M. T. Goodrich, R. Tamassia, D. M. Mount, Data Structures and Algorithms in C++, John Wiley & Sons, Inc., 2011 Hakan Kutucu, VERİ YAPILARI, Karabük Üniversitesi Mühendislik fakültesi, 2014 Data Structures and Algorithms, TutorialPoints, NİŞANTAŞI ÜNİVERSİTESİ ©