Yazan : Şadi Evren ŞEKER İki sayının ortak bölenlerinin en büyüğü ile kastedilen iki sayı çarpanlarına ayrıldığında ortak çarpanlarının en büyüğüdür. Örneğin 27 ve 18 sayılarının en büyük ortak bölenleri 9 dur çünkü 9 iki sayıyı da böler, ve iki sayıyı da bölen daha büyük ortak bir sayı yoktur. iki sayının ortak böleninin en büyüğünün […]
Category: Automata (otomatlar, özdevinirler)
Özdevinimliler, Özdevinirler veya otomatlar olarak türkçede geçen ve ingilizce literatüründe automata olan konu başlığı için ayrılmış kategöridir.
Belirsiz Çokterimli Tam (NP-Complete, Nondeterministic Polynomial Complete)
Yazan : Şadi Evren ŞEKER Bilgisayar bilimlerinde problem sınıflamada kullanılan sınıflardan birisidir. Bu sınıfa giren problemler için çözümleme zamanı arttıkça artan (super increasing) yapıya sahip olmaktadır. Buna göre her adımdaki çözümleme zamanı kendinden çözümleme zamanlarından daha fazladır. Problem yapı olarak artan zamanda çözüldüğü için de bu problem tiplerinin çokterimli zamanda (polynomial time) çözülmesi mümkün değildir. […]
Sonlu Durum Makinası (Finite State Machine, Finite State Automaton)
Yazan: Şadi Evren ŞEKER Sonlu durum makinaları bir çizim şeklidir. Bu çizim şeklinde çeşitli durumlar ve bu durumlar arası geçiş şekilleri gösterilir. Örneğin aşağıda basit bir kapı açma ve kapama makinesi verilmiştir: Yukarıdaki şekilde makine, açık durumdan kapalıya geçmek için kapama düğmesine basılmasını bekler. Tersi durumda da kapalıdan açığa geçmek için kapama düğmesinin basılmasını bekler. […]
Kruskal Asgari Tarama Ağacı Algoritması
Görsel konu anlatımı: https://www.youtube.com/watch?v=k4e98XN6cPU Yazan : Şadi Evren ŞEKER Bir asgari tarama ağacı (minimum spanning tree) algoritması olan Dijkstra algoritması, işaretlemiş olduğu komşuluklara en yakın düğümü bünyesine katarak ilerler. Buna göre aşağıdaki grafiğin asgari tarama ağacını çıkaralım: Yukarıdaki grafikte her düğüm için bir temsili harf ve her bağlantı için bir ağırlık değeri atanmıştır. Buna göre […]
Prim asgari tarama ağacı Algoritması
Bu konunun görsel anlatımı eklenmiştir: Yazan: Şadi Evren ŞEKER Bir asgari tarama ağacı (minimum spanning tree) algoritması olan Prim algoritması, işaretlemiş olduğu komşuluklara en yakın düğümü bünyesine katarak ilerler. Buna göre aşağıdaki grafiğin asgari tarama ağacını çıkaralım: Yukarıdaki grafikte her düğüm için bir temsili harf ve her bağlantı için bir ağırlık değeri atanmıştır. Buna göre […]
asgari tarama ağacı (en kısa örten ağaç, minimum spanning tree)
Yazan: Şadi Evren ŞEKER Asgarai tarama ağacı, ağırlıklık bir ağda (weighted graph, yani her düğümü birbirine bağlayan yolların maliyeti (ağırlığı) olması durumu), bütün düğümleri dolaşan en kısa yolu verir. Örneğim aşağıdaki grafikte bütün düğümlere uğrayan en kısa yol işaretlenmiştir: asgari tarama ağacını veren en meşhur algoritmalar: Kruskal Algoritması Prims Algoritması Dijkstra Algoritması (Asgari tarama ağacının […]
fonksiyon göstericileri (function pointer)
yazan: Şadi Evren ŞEKER fonksiyon göstericilerinin amacı, programlama dilinde bulunan fonksiyonları gösteren birer referans bilgisi tutmaktır. Bu sayede gösterilmekte olan fonksiyon için hafızada ayrılmış olan yere erişmek ve dolayısıyla örneğin fonksiyonun yerel değişkenlerine ulaşmak mümkündür. Aşağıda C dilinde yazılmış bir fonksiyon göstericisi kullanan kod örneği verilmiştir: #include #include void func(int); main(){ void (*fp)(int); fp = […]
otomat yönelimli programlama (automata based programming)
yazan : Şadi Evren ŞEKER otomat yönelimli programlama yaklaşımı, kaynağını otomatlar (automata)’dan alır ve sonlu durum makinaları (finite state machine, FSM) ile tasarlanan bir makinanın kodlanmasını hedefler. Basitçe C dilindeki switch komutlarının dallanmasına benzer bir şekilde her durumdan bir sonraki duruma geçiş yapan bu programlama yaklaşımında amaç durumlar arası geçişin tasarıma uygun olarak kolay bir […]
fonksiyonel programlama (functional programming)
yazan : Şadi Evren ŞEKER Programlama yaklaşımlarından birisi olan fonksiyonel programlama günümüz dillerinin neredeyse tamamında kullanılmaktadır. Bu yaklaşımda matematik fonksiyonlarında olduğuna benzer bir şekilde alt programlar tanımlanmakta ve bu alt programların değişik argümanlar ile çalışması sağlanmaktadır. Bu yaklaşım basitçe: Kod tekrarını engellemekte ve aynı kodun farklı şartlar için tekrar tekrar çalışmasını sağlamaktadır Kodun okunaibilirliğini arttırmakta […]
En uzun Ortak Küme (longest common subsequence, Lcs)
yazan : Şadi Evren ŞEKER İki küme arasındaki ortak elamanların (sıralı olmak şartıyla) en uzun ortaklığını arar. Örnek: A-> {X,M,J,Y,A,U} B-> {M,Z,J,A,W,X,U} olarak verilmiş olsun. Bu iki kümenin, sırası bozulmadan ortak olan en uzun alt kümesi: LCS -> {M,J,A,U} olarak bulunur. Bu problem karmaşıklık açısından NP-hard problemlere bir örnektir. Aynı zamanda çözüm için önerilen yöntemler […]