image_pdfimage_print
Algoritma Geliştirme

GARBAGE COLLECTOR ( ÇÖP TOPLAYICI )

tarihinde yayınlandı

 Merhaba arkadaşlar, bu yazı Java’ da çöp toplayıcı kavramını anlatmak için yazılmıştır. Umarım yararlı olur. ÇÖP TOPLAYICI NEDİR? Öncelikle ” Çöp toplayıcı nedir? ” sorusuyla başlayalım; Programda bazı nesnelerin kullanımı bittiğinde bellekten silinmeleri gerekir, nesneye yönelik programlama dillerinde bu işlem otomatik olarak gerçekleşir. Yani programcının müdahalesi gerekmeden hafıza yönetimi gerçekleşir. İşte bunu gerçekleştiren yapı ise çöp […]

Algoritma Geliştirme

Naive Bayes Sınıflandırıcısı

tarihinde yayınlandı

Basit haliyle bir sınıflandırma-kategorilendirme algoritmasıdır. İsmini 17.yy’da yaşamış Thomas Bayes adında bir matematikçiden alır. Verilerin sınıflandırılmasından daha çok nasıl sınıflandırıldığı önemlidir bu algoritmada. En sade hali ile bir olayın herhangi bir kategoriye ait olmasinin olasılığını hesaplamada kullanilir. En önemli kuralı niteliklerin birbirinden bağımsız olduğudur çünkü nitelikler birbirini etkiliyorsa burada olasılık hesabı zordur.Niteliklerinin hepsinin aynı derecede […]

Algoritma Geliştirme

Yazılım Tasarımı(Software Design)

tarihinde yayınlandı

Yazılım Nedir ? Hem bilgisayar sistemini oluşturan donanım parçalarının yönetimini hem de kullanıcıların işlerini yapmak için gerekli olan konular topluluğuna yazılım denir. Tasarım ise herhangi bir mühendislik ürünü geliştirme sürecindeki ilk adım sayılabilir. Bir kodlayıcı , ne kadar iyi olursa olsun , bir tasarım yapıp onu yeterli bir şekilde yazılı hale getirmedikten sonra verimli bir […]

Algoritma Geliştirme

The Big O Notation

tarihinde yayınlandı

The Big O Notation Yazdığımız bir algoritmanın doğru çalıştığından emin olmakla birlikte bu algoritmayı, daha önce yazılmış ve aynı sonucu veren başka algoritmalarla karşılaştırmak isteyebilirsiniz. Burada teknik olarak değerlendirilecek başlıca iki başlık söz konusudur. Birincisi algoritmaların bellek kullanım miktarı, ikincisi ise algoritmaların hesaplama yapmak için harcadığı süredir. Mesela yazdığınız bir algoritma aynı işi yapan diğer […]

Algoritma Geliştirme

BUBLESORT ALGORİTMASI

tarihinde yayınlandı

Bublesort Algoritması (Kabarcık Sıralama Algoritması)   C Programlama Dili Bubble Sort Algoritması ile kullanıcının girdiği sayıları küçükten büyüğe sıralayan program kodu. Sıralama algoritmaları arasında en çok bilinen Bubble Sort (Kabarcık Sıralama) algoritmasını bulabilirsiniz. Kullanıcıdan gireceği sayı adedi öğrenilir. Kullanıcıdan sayılar alınır. Girilen sayılar ekrana yazdırılır. Bubble Sort algoritması ise sayılar küçükten büyüğe sıralandırılır ve dizinin […]

Algoritma Geliştirme

Sayarak Sıralama (Counting Sort) algoritması

tarihinde yayınlandı

Verinin hafızada sıralı tutulması için geliştirilen sıralama algoritmalarından (sorting algorithms) bir tanesidir. Basitçe sıralanacak olan dizideki her sayının kaç tane olduğunu farklı bir dizide sayar. Daha sonra bu sayıların bulunduğu dizinin üzerinde bir işlemle sıralanmış olan diziyi elde eder. Sıralanmak istenen verimiz: 5,7,2,9,6,1,3,7 olsun. Bu verilerin bir oluşumun(composition) belirleyici alanları olduğunu düşünebiliriz. Yani örneğin vatandaşlık […]

Algoritma Geliştirme

QUICK SORT (HIZLI SIRALAMA) ALGORİTMASI

tarihinde yayınlandı

Quick sort algoritması türkçe adıyla hızlı sıralama algoritması, günümüzde hala sıklıkla kullanılan bir algoritmadır. Sıralanması istenen dizi, dizi içerisinden belirlenen bir nokta (pivot noktası) yardımıyla iki alt diziye ayrılır. Pivot noktasından küçük olan elemanlar soldaki birinci alt diziye, büyük olan elemanlar ise sağdaki ikinci alt diziye taşınır. Daha sonra, yine aynı algoritma rekürsif olarak çağrılarak […]

Algoritma Geliştirme

MERGE SORT(birleştirme sıralaması)algoritması

tarihinde yayınlandı

Merge Sort (Bileştirme Sıralaması) Algoritması Merge Sort (Birleştirme Sıralaması), diziyi ardışık olarak en küçük alt dizilerine kadar yarılayan sonra da onları sıraya koyarak bireştiren özyineli bir algoritmadır. Yarılama işlemi en büyük alt dizi en çok iki öğeli olana kadar sürer. Sonra “Merge (Birleştirme)” işlemiyle altdiziler ikişer ikişer bölünüş sırasıyla sıralı olarak bir üst dizide bireşir. […]

Algoritma Geliştirme

shell sort(kabuk sıralama)

tarihinde yayınlandı

Bilgisayar bilimlerinde kullanılan sıralama algoritmalarından birisi de kabuk sıralamadır (shell sort).  İsmi Türkçeye kabuk sıralaması olarak çevrilsede aslında Donald Shell isimli algoritmayı ilk bulan kişinin isminden gelmektedir. Algoritma performansı O(n2)’dir. Çalışması aşağıdaki örnek üzerinde anlatılmıştır: Sıralayacağımız sayılar:

olarak verilmiş olsun. Sıralama işlemi için öncelikle bir atlama miktarı belirlenir. Atlama miktarının belirlenmesi için çok çeşitli […]

Algoritma Geliştirme

Tarak Sıralama Algoritması(Comb Sort)

tarihinde yayınlandı

Comb Sort yani “Tarak Sıralaması” adından da anlaşılacağı gibi karşılaştırmalı bir sıralama algoritmasıdır. Aslına bakarsak kabarcık sıralaması ile hızlı sıralama karışımı diyebiliriz.Nisan 1991’de Stephen Lacey ve Richard Box tarafından duyurulmuştur. Tarak sıralaması tıpkı kendisi gibi karşılaştırmalı bir sıralama algoritması olan Kabarcık sıralamasından daha iyidir. Kabarcık sıralamasında sayılar bir yanındaki sayı ile karşılaştırılır ve ona göre […]