Algoritma Analizi (Teory of Algorithms)

Algoritma Analizi (Teory of Algorithms) Automata (Otomatlar) Derleyiciler Programlama Dilleri Sistem Programlama (System Programming)

Backus Normal Form (BNF)

Yazan : Şadi Evren ŞEKER Bilgisayar bilimlerilnde genellikle bir dil tanımlamada ve bu dilin gramerini (Dil bilgisini) belirlemekte kullanılan gösterim biçimidir. Basitçe dil bir dil tanımında başlayarak Terminal (sonuncu) ve Non-Terminal (Devamlı) terimler kullanarak tanılmanmaktadır. Örneğin aşağıda basit bir örneği…

Algoritma Analizi (Teory of Algorithms) Veri Yapıları

Buket Sıralaması (Bucket Sort)

Yazan : Şadi Evren ŞEKER Buket sıralması veya kutu sıralaması (bin sorting) isimleri verilen bu arama yöntemi öncelikle arama yapılacak olan sayıları (veya anahtarları) buketlere böler. Daha sonra her buketi kendi içinde sıralar (veya buket sıralama algoritmasını özyineli olarak (recursive)…

Algoritma Analizi (Teory of Algorithms) Bilgisayar Felsefesi İşletim Sistemleri Temel Bilgisayar Kavramları

Kıtlık (Starvation)

Yazan : Şadi Evren ŞEKER Bir algoritmada sıra bekleyen işlere bir türlü sıra gelmemesi durumudur. Teorik olarak sıradaki her işe birgün sıra gelecektir ancak fiiliyatta bu bir türlü gerçekleşmeyebilir. Bu tip problemler genelde öncelik tanımlanmış olan algoritmalarda çıkar. Şöyle bir…

Algoritma Analizi (Teory of Algorithms) İşletim Sistemleri Veri Yapıları

İlk Gelen Çalışır (First Come First Serve, FCFS, FIFO)

Yazan : Şadi Evren ŞEKER Bilgisayar bilimlerinin çeşitli alanlarında kullanılan bir yaklaşımdır. Bu yaklaşıma göre bir kaynak veya bir isıraya ilk gelenin ilk önce işini bitirerek çıkması hedeflenir. Örneğin CPU Scheduling (İşlemci zamanlama) problemi sırasında işlemciye gelen işlemlerin hangi sıra…

Algoritma Analizi (Teory of Algorithms) Veri Yapıları

Sığ Öncelikli Arama (Breadth First Search , BFS)

Yazan : Şadi Evren ŞEKER Bir ağaç dolaşma algoritmasının (tree traverse algorithm, tree traversal) ilk önce aynı seviyede bulunan komşularını araması durumudur. Örneğin aşağıdaki ağacı ele alalım: Ağacı dolaşma sırlaması örneğin 5,7,8,3,2,1,9 şeklindeyse bu dolaşmaya sığ öncelikli arama ismi verilebilir….

Algoritma Analizi (Teory of Algorithms) Bilgisayar Felsefesi Bilgisayar Matematiği

Durma Problemi (Halting Problem)

Yazan : Şadi Evren ŞEKER Problem kısaca bir programın bir zaman sonra durup durmayacağının belirsizliği üzerine tartışmadır. Yani basitçe elimizde bir program ve bu programın parametresi olsun (programa verilebilen bir girdi). Programın bitip bitmeyeceğini bilemeyiz. Peki bunu nasıl ispatlarız? Burada…

Algoritma Analizi (Teory of Algorithms) Bilgisayar Felsefesi Bilgisayar Matematiği

Tersine Koyarak İspat (antitez, Contraposition)

Yazan : Şadi Evren ŞEKER Bilgisayar bilimlerinde de kullanılan ispat yöntemlerinden birisi bir önermenin tersini ispatlayarak önermenin doğruluğunu göstermektir. Doğrudan ispat yöntemlerinde p -> q zinciri kullanılmaktadır. Bu yaklaşımda ise ¬p -> ¬q yaklaşımı ile iki önermenin de tersi alınır…

Algoritma Analizi (Teory of Algorithms) Bilgisayar Felsefesi

Doğrudan İspat (Direct Proofing)

Yazan : Şadi Evren ŞEKER Bilgisayar bilimlerinin pekçok alanında da kullanılan ispat yöntemlerinden en basitidir. Bu yönteme göre ispatlanmak istenen durum genelde p->q şeklinde bir önermenin (kaziye) ispatının diğer bir önermeyi (kaziyeyi) gerektirdiği bir dizilimdir ve birisinin ispatı diğerini gerektirir….

Algoritma Analizi (Teory of Algorithms) Veri Yapıları

Taban Sıralaması (Radix Sort)

Taban Sıralaması (Radix Sort) Yazan : Şadi Evren ŞEKER Hane sıralaması, radiks sıralaması veya kök sıralaması isimleri de verilebilen sıralama algoritmasına göre sıralanacak olan değerler hanelerine (digits) göre sıralanır. En değersiz haneden (Least significant digit) en değerli haneye (most significant…

Algoritma Analizi (Teory of Algorithms) Veri Yapıları

Doğrusal Arama (Linear Search)

Doğrusal Arama (Linear Search) Yazan : Şadi Evren ŞEKER Sequential Search (Sıralı arama) ismi de verilen bu arama tam anlamıya bir veriyi, arananlara teker teker bakarak aramaktır. Yani aşağıdaki sayılar arasında 15 sayısını aramak için: 4 6 12 8 5…