Eşleme (Matching)

Yazan : Şadi Evren ŞEKER Bilgisayar bilimlerinde çeşitli amaçlar için kullanılan eşleştirme problemlerinin genel ismidir. Genellikle bir arz ile bir talebin eşleştirilmesi şeklinde olur. Örneğin bilgisayarın kaynaklarının, bu kaynakları talep eden işlemler ile eşleştirilmesi gibi. Ya da gerçek hayattan bir çalışanın uygun iş ile eşleştirilmesi veya evlilik problemleri veya iş akış diyagramları (işin doğru kaynak […]

Devam

Petri Ağları (Petri Nets)

Yazan : Şadi Evren ŞEKER Bilgisayar bilimlerinde özellikle birbiri ile eş zamanda çalışan işlerin (concurrent jobs) modellenmesi ve çözülmesinde kullanılan özel grafiklerdir. Bu graflara Yer / Geçiş Ağları (Place / Transition Networks veya P/T Nets) ismi de verilir. İçerik 1. Örnek Petri Ağları 2. Dairesel Petri Ağları 3. Paralel Petri Ağları 4. Koşullu Petri Ağları […]

Devam

İki Parçalı Graflar (Bipartite Graphs)

Yazan : Şadi Evren ŞEKER İçerik 1. İki parçalı graflara örnekler 2. İki parçalı grafın test edilmesi 3. İki parçalı grafların kullanım alanları 4. İki parçalı grafların özellikleri Bilgisayar bilimlerinde veri modellemede sıkça kullanılan grafların (graph) özel bir durumudur. Buna göre bir graf’ı oluşturan düğümleri iki farklı kümeye ayırabiliyorsak ve bu iki kümenin elemanlarından küme […]

Devam

Çok boyutlu diziler (MultiDimensional Arrays)

Çok boyutlu diziler (MultiDimensional Arrays) Yazan : Şadi Evren ŞEKER Bilgisayar bilimlerindeki pek çok programlama dilinde birden fazla boyuttan oluşan dizilerin kullanılması mümkündür. Örneğin bir ders çizelgesini, haftalık yemek listesini yada kişilerin aylık satışlarından oluşan bir tabloyu ele alalım. Günlük hayatta pek çok yerde tablolar kullanılmaktadır. Aynı zamanda matrisler (masfuf, matrix) matematikte küçümsenmeyecek bir öneme […]

Devam

Minimax Ağaçları (Minimax Tree)

  Minimax Ağaçları (Minimax Tree) Yazan : Şadi Evren ŞEKER Bilgisayar mühendisliğinde, yapay zeka konusunda kullanılan bir karar ağacı türüdür. Aslında minimax ağaçları bilgisayar bilimlerine işletme bilimindeki oyun teorisinden (game theory) girmiştir. Temel olarak sıfır toplamlı bir oyunda (zero sum game), yani birisinin kaybının başka birisinin kazancı olduğu (veya tam tersi) oyunlarda karar vermek için […]

Devam

Brent Algoritması (Brent’s Algorithm)

Yazan : Şadi Evren ŞEKER Bilgisayar bilimlerinde özlelikle graf teorisinde (graph theory) kullanılan ve bir döngüyü (cycle) algılamaya yarayan algoritmadır. (cycle detection). Basitçe tavşan ve kaplumbağa algoritmasından (hare and tortoise algoritm) esinlenmiştir. Floyd algoritması olarak da isimlendirilen tavşan ve kaplumbağa algoritmasından farklı olarak tavşan, kaplumbağanın iki misli değil 2 üzeri adımla hareket etmektedir. Yani kaplumbağa, […]

Devam

Tavşan Kaplumbağa Algoritması (Hare and Tortoise Algorithm)

Yazan : Şadi Evren ŞEKER Bilgisayar bilimlerinde veriyi modellemek için kullanılan graflarda bir döngü (cycle) olup olmadığını algılamaya yaramak için kullanılan algoritmadır. Floyd Döngü Yakalama Algoritması (Floyd’s Cycle Detection Algorithm) olarak da geçen bu algoritmaya göre bir yol üzerinde hareket eden iki farklı hızdaki gösterici (pointer) aynı değeri gösterebiliyorsa burada bir döngü bulunuyor demektir. Tosbağa […]

Devam

Şablonlar (Templates)

Yazan : Şadi Evren ŞEKER Bilgisayar mühendisliğinin pek çok alanında kullanılan şablonlar, programlama dillerinde bir fonksiyon (function) veya programın bir parçasının farklı değişken tipleri için kulllanılmasını sağlarlar. Örneğin JAVA ve C++ dillerinde kullanılan bu özelliği bu yazı kapsamında açıklamaya çalışacağız. Örneğin aşağıdaki kod parçasını ele alalım: template<typename T> template<class T> Yukarıdaki ilk satırda bir tip […]

Devam

Sayma (Enumeration, Tâdâd)

Yazan: Şadi Evren ŞEKER Bilgisayar bilimlerinde alınabilecek alternatiflerin sayılması ve bu sayılan ihtimaller dışındaki ihtimallerin kabul edilmemesi durumudur ( ihtimallerin tâdât edilmesi) Örneğin programlama dillerinde bir değişkenin alabileceği değerleri tanımlayarak bu değişkene sadece bu değerlerden birisinin konulması sağlanabilir. Örneğin C dilinde yazılmış aşağıdaki kodu ele alalım: enum gunler{ pts,sal,car,per,cum,cts,paz }gun; main(){ gun=sal; printf(“n%d”,gun); //2. gün […]

Devam

Çift Uçlu Sıra (Double Ended Queue)

Yazan : Şadi Evren ŞEKER Veri yapılarında kullanılan sıra (qeueu)‘nun iki yönden de veri eklenip çıkarılabilen halidir. Klasik sırada veriye FIFO (First in First Out, fifo ilk grin ilk çıkar) mantığıyla erişilmekte ve bu yüzden sıranın bir başı bir de sonu bulunmaktadır. Basitçe sondan giren elemanlar baştan çıkmaktadır. Çift uçlu sıralarda (double ended queue , […]

Devam