Veriyapıları ve algoritmalar final imtihanı çözümü
Soru 0) Bir ağacın eleman sayısını bulan kodu yazınız (ağacın ikili ağaç olma zorunluluğu yoktur, ağaçtaki her düğümün çocuklarının bir dizide tutulduğunu kabul edebilirsiniz).(20 puan) int elemanSayisi(node *tree){ if(tree==null) return 0; int sayi = 0; for(int i =0;i<cocuklar;i++){ sayi +=…
Kafes Çarpımı (Lattice Multiplication)
Yazan : Şadi Evren ŞEKER Tarihi çarpma algoritmalarından birsidir. Bu çarpma algoritmasının özelliği, çarpma işlemi sırasında kafes benzeri bir sayı tablosu kullanmasıdır. 16. yüzyılda yayınlanan Umdet-ul Hisab isimli kitabında Matrakçı Nasuh tarafından 6 ayrı halinin anlatıldığı çarpma metodu o yıllardaki…
Zayıf Anahtar (Weak Key)
Yazan : Şadi Evren ŞEKER Veri güvenliği konusunda, bir şifreleme algoritmasının kullandığı bir anahtardan dolayı, zafiyet doğması durumudur. Örneğin DES algoritmasında, kullanılan özel bir anahtar, saldırgana ilave bir avantaj sağlıyorsa, bu durumda bu anahtara zayıf anahtar (weak key) ismi verilir….
ADFGVX Şifrelemesi
Yazan : Şadi Evren ŞEKER Alman ajanı Fritz Nebel tarafından I. Dünya savaşı sırasında geliştirilen iki şifreleme algoritması bulunur. Bunlar ADFGX ve ADFGVX olarak geçmektedir. Almanların Fransa saldırısı sırasında Fransız Geoges Painvin tarafından kırılarak alman birliğinin konumunun bulunması ve bu…
Karatsuba Çarpım Algoritması
Yazan : Şadi Evren ŞEKER İki tam sayının çarpımı için kullanılan algoritmalardan birisidir. Algoritma temel olarak çok haneli sayıların çarpımında hız kazandırır. Algoritmanın çalışması Algoritma öncelikle çarpılacak olan sayıları, alt gruplara böler. Örneğin herhangi bir x sayısı aşağıdaki şekilde yazılabilir:…
Mısır Çarpma Yöntemi
Yazan : Şadi Evren ŞEKER Antik mısırda kullanılan ve 0 sayısının kullanımından önce geliştirilen çok haneli sayıların çarpımı için kullanılan yöntemdir. Literatürde antik mısır çarpımı (ancient egypt multiplication) olarak geçen yönteme ayrıca çok benzeyen ve rusyada bağımsız olarak geliştirilmiş olan…
Fourier Dönüşümü
Yazan : Şadi Evren ŞEKER Bilgisayar bilimlerinin de üzerine kurulduğu matematik alanında, bir fonksiyonun, frekans alanı (frequency domain) diye isimlendirilen bir alanda, farklı bir fonksiyona dönüştürülmesinin ismidir. Bilgisayar bilimlerinde genelde kesikli matematik teorisine ihtiyaç duyulduğu için bu dönüşümün kesikli olanı…
Lagrange Teoremi
Yazan : Şadi Evren ŞEKER Bilgisayar bilimlerinin de çeşitli alanlarda kullandığı bu teorem literatürde iki farklı konu altıdan geçmektedir. Lagrange teoremini grup teorisi (group theory) altında veya sayılar teorisi (number theory) altında incelemek mümkündür. Bu yazıda bilgisayar bilimleri açısından önemli…
WOLG (Genelliğini Kaybetmeden)
Yazan : Şadi Evren ŞEKER Bilgisayar bilimlerinin de temellerini oluşturan matematik’te kullanılan bir tabirdir. İngilizcede “without loss of generality” kelimelerinin baş harflerinden oluşur ve Türkçede “genelliğini kaybetmeden” şeklinde kullanılabilir. Genelde matematiksel bir ispat yapılması veya bir çıkarım sırasında kullanılır. Buradaki…
CYK Parçalama
Yazan : Şadi Evren ŞEKER CYK parçalama algoritması (parse algorithm), verilen girdinin (input), bir içerikten bağımsız dil (context free language) için nasıl parçalanabileceğini gösterir. CYK algoritmasının ismi, algoritmayı bulan kişilerin baş harflerinden oluşur: Cocke–Younger–Kasami. Algoritmadaki amaç, içerikten bağımsız dilin üretebileceği…












