Son Yazılar

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

Smith Waterman Dizgi Yaslama (String Alignment) Algoritması

Yazan : Şadi Evren ŞEKER Bu yazının amacı, Smith Waterman algoritmasını açıklamaktır. Algoritma, dizgi yaslama (string alignment) işlemlerinde kullanılmaktadır. Dizgi yaslama işlemi (string alignment), basitçe iki dizgiyi alıp bu iki dizgideki ortak alanları bulmayı amaçlar. Bu tip algoritmalar, özellikle gelişen…

Veri Yapıları

Needleman Wunsch Algoritması

Yazan : Şadi Evren ŞEKER Bu yazının amacı, bir dizgi (string) işleme algoritması olan Needleman-Wunsch algoritmasını açıklamaktır. Algoritma, basitçe iki dizgi (string) arasındaki yaslama durumunu bulmayı amaçlar. Buna göre iki dizgiden oluşturulan bir ölçüm değeri ile (metric) dizgiler karşılaştırılır ve…

Network (Ağ)

Sıcak Patates Algoritması (Hot Potato Routing Algorithm)

Yazan :Şadi Evren ŞEKER Bu yazının amacı, sıcak patates (hot potato) ve soğuk patates (cold potato) yönlendirme algoritmalarını (routing algorithms) açıklamaktır. Basitçe konuyu açıklayacak olursak, yönlendirme algoritmaları (routing algorithms) internet paketlerinin yönlendiriciler (routers) arasında gönderilmesi temeline dayanır. Sıcak patates algoritması…

Algoritma Analizi (Teory of Algorithms) C / C++ Veri Yapıları

Permütasyon Sıralaması (Permutation Sort)

Yazan : Şadi Evren ŞEKER Bu yazının amacı, permütasyon sıralaması (permutation sort) olarak bilinen sıralama algoritmasını (sorting algorithm) açıklamaktır. Algoritma asılnda oldukça basit bir yapıya sahiptir. Basitçe bir sayı dizisinin bütün permütasyonları sırasıyla denenir ve bunlardan birisinin sıralı olarak bulunması…

Derleyiciler

Earley Parçalama Algoritması (Earley Parsing Algorithm)

Yazan : Şadi Evren ŞEKER Bu yazının amacı, bilgisayar bilimlerinde özellikle derleyici tasarımı (compiler design) konusu altında geçen Earley Parçalama Algoritmasını (Earley Parsing Algorithm) açıklamaktır. Bu algoritmanın amacı, verilen bir gramer ile verilen bir girdiyi parçalayarak varsa bu girdideki hatayı…

Algoritmalar & Veri Yapıları Automata (Otomatlar)

SLR(1)

Yazan : Şadi Evren ŞEKER Bu yazının amacı, özellikle derleyici tasarımı (compiler design) konusunda sıkça kullanılan parçalama algoritmalarından (parse algorithm) birisi olan SLR(1) algoritmasını açıklamaktır. Algoritma, klasik LR algoritmalarından LR(1) algoritmasının basitleştirilmiş halidir. Bu anlamda Simplified LR(1) şeklinde okunabilir. LR(1)…

C / C++

printf sprintf fprintf

Yazan : Şadi Evren ŞEKER Bu yazının amacı, C dilinin en çok kullanılan fonksiyonlarından birisi olan printf fonksiyonu ve türevlerini açıklamaktır. Bu fonksiyonlar aşağıdaki şekilde sıralanabilir: fprintf, printf, snprintf, sprintf Bu fonksiyonların tamamı stdio.h kütüphanesi içerisinde bulunur ve bu fonksiyonların…

Algoritma Analizi (Teory of Algorithms) C / C++ Veri Yapıları

Gnome Sıralaması (Gnome Sort)

Yazan : Şadi Evren ŞEKER Bu yazının amacı, aptal sıralaması olarak bilinen (stupid sort) ve daha sonraları gnome sıralaması ismiyle anılan sıralama algoritmasını (sort algorithm) anlatmaktır. Algoritma 2000 yılında, Hamid Sarbazi-Azad tarafından bulunmuştur ve bir dizideki sayıları sıralama amacıyla, doğru…

Algoritma Analizi (Teory of Algorithms) C / C++ Veri Yapıları

Tarak Sıralaması (Comb Sort)

Yazan : Şadi Evren ŞEKER Bu yazının amacı, tarak sıralaması (comb sort) olarak bilinen algoritmayı açıklamaktır. Algoritma, çıkışı itibariyle kabarcık sıralaması (bubble sort) ve hızlı sıralama (quick sort) karışımı olarak düşünülebilir. Tarak sıralaması aslında anlaşılması oldukça kolay bir algoritmadır. Ancak…

Algoritma Analizi (Teory of Algorithms) Bilgisayar Matematiği Veri Yapıları

Flash Sort (Şimşek Sıralaması, Bora Sıralaması)

Yazan : Şadi Evren ŞEKER Bu yazının amacı bora sıralamasını (şimşek sıralaması, flash sort) açıklamaktır. Bu sıralama algoritması yapısal olarak aslında araya ekleme sıralamasının (insertion sort) özel bir hali olarak kabul edilebilir. Sıralama algoritmaları arasında parçalı sıralama özelliği olan diğer…