Algoritma, matematikte ve bilgisayar biliminde bir işi yapmak için tanımlanan, bir başlangıç durumundan başladığında, açıkça belirlenmiş bir son durumunda sonlanan, sonlu işlemler kümesidir. Yani belli bir problemi çözmek veya belirli bir amaca ulaşmak için çizilen yola algoritma denir. Genellikle programlamada kullanılır ve tüm programlama dillerinin temeli algoritmaya dayanır. Aynı zamanda algoritma tek bir problemi çözecek […]
Kategori: Algoritmalar
2-)Algoritma Geliştirme
Daha önceki yazımda yazılımların genel amacının var olan bir problemi çözmek olduğunu bunu iki şekilde yapabileceğimizi yazmıştım. Bu yazıda algoritmayı inceleyeceğiz. Algoritmanın amacı belirli bir problemi çözmektir. Bunu üç şekilde yapabiliriz. Satır algoritması, akış diyagramı ve sözde koddur. Sözde kod satır kodunun daha kurallısı olduğundan anlatmaya gerek duymuyorum. Simge Adı Örnek Açıklamma + Toplama C=A+B […]
3-)Algoritma Örnekleri
İki Sayıda Dört İşlem Bu problemde çözümleme yaparsak kullanıcıdan iki sayı almamız ve bunların sonucunu bir değişkene atayıp ekrana yazdırmamız gerekir. 1. Başla 2. Oku Sayı1 3. Oku Sayı2 4. Toplama=Sayı1+Sayı2 5. Çıkarma=Sayı1-Sayı2 6. Çarpma=Sayı1*Sayı2 7. Bölme=Sayı1/Sayı2 8. Yaz Toplam, Çıkarma, Çarpma, Bölme 9. Dur Herkes gibi ilk başlarken aklınızdan bunlar ne […]
4-)Algoritmada Diziler
Yazıma diziyi tanımlayarak başlamak istiyorum. Bellekte sıralı bir şekilde bulunan ve aynı türden bilgilerin saklandığı veri yapısına dizi denir. Dizi aynı veri tipinden bir dizi değişkenin tek bir ad ile temsil edilmesiyle oluşmuş değişkendir. Dizilerin çıkış mantığı çok basittir. Problemlerin çözümünde şimdiye kadar hep birkaç değişken ve değer kullandık. Bu değişkenlerin sayısı birkaçı geçmediğinden işimiz […]
Akış Şeması
Akış şeması algoritmaları ve işlemleri birbirine oklarla bağlı değişik tiplerdeki kutular içerisinde gösteren yaygın bir şema tipidir. Akış şemaları çeşitli alanlardaki işlem ve uygulamaların yönetilmesi, belgelendirilmesi, tasarlanması ve çözümlenmesinde kullanılır. Süreç akışını belgelemek için oluşturulan ilk metod olan “akış süreç şeması” Frank Gilbreth tarafından ASME (Amerikalı Mekanik Mühendisleri Topluluğu) üyelerine 1921’de sunulmuştur. Gilbreth’in araçları endüstri […]
Sıralama Algoritmaları
Sıralama algoritması, bilgisayar bilimlerinde ya da matematikte kullanılan, verilen bir listenin elemanlarını belirli bir sıraya sokan algoritmadır. En çok kullanılan sıralama türleri, sayı büyüklüğüne göre sıralama ve alfabetik sıralamadır. Sıralama işleminin verimli yapılması, arama ve birleştirme algoritmaları gibi çalışması için sıralanmış dizilere gereksinim duyan algoritmaların başarımının yüksek olması için önemlidir. Sıralama algoritmaları bilgisayarlarda tutulan verilerin […]
Sıralama Algoritmaları – Seçmeli Sıralama (Selection Sort)
Seçmeli Sıralama, bilgisayar bilimlerinde kullanılan karmaşıklığı bir sıralama algoritmasıdır. Karmaşıklığı \mathcal{O}(n^2) olduğu için büyük listeler üzerinde kullanıldığında verim sağlamaz ve genel olarak benzeri olan eklemeli sıralamadan daha başarısızdır. Seçmeli sıralama yalın olduğu ve bazı durumlarda daha karmaşık olan algoritmalardan daha iyi sonuç verdiği için tercih edilebilir. Sözde Kodu A sıralanacak öğeler kümesi, n ise A’daki […]
Cüce sıralaması
Cüce sıralaması (İngilizcesi: Gnome sort), bilgisayar bilimlerinde kullanılan araya sokmalı sıralamaya benzer bir sıralama algoritmasıdır. Ara sokmalı sıralamadan farkı kabarcık sıralaması yönteminde olduğu gibi, bir elemanın sıralanan dizideki yerine birçok yer değiştirme yoluyla gelmesidir. Cüce Sıralaması adı algoritmanın yönteminin mitolojideki Hollanda cücelerinin (gnome) bir dizi çiçek saksısını sıraya diziş biçimine benzemesinden kaynaklanmaktadır. == Sözde Kodu […]
Sıralama Algoritmaları – Tarak Sıralaması
Tarrak Sıralaması, ilk defa 1991 yılının Nisan ayında Stephen Lacey ve Richard Box tarafından Byte dergisinde duyurulmuş yalın bir sıralama algoritmasıdır. Kendisinden önce duyurulmuş kabarcık sıralaması algoritmasından başarılıdır ve karmaşıklıkta hızlı sıralama algoritmasıyla yarışır. Algoritmanın ana fikri listenin sonundaki küçük değerli öğelerin sayısını azaltmaktır. Kabarcık sıralaması algoritmasında sıralanacak listenin sonundaki küçük değerli öğelerin varlığı algoritmayı […]
Sıralama Algoritmaları – Kokteyl sıralaması
Kokteyl sıralaması, bilgisayar bilimlerinde kabarcık sıralaması algoritmasına benzer bir sıralama algoritmasıdır. Kabarcık sıralamasından farkı sıralanacak listenin üzerinden tek yöne doğru değil iki yöne de geçerek öğeleri sıralamasıdır. Algoritmanın uygulanması kabarcık sıralaması algoritmasının uygulanmasından çok az daha zordur.Sözde kodu Kokteyl sıralamasının en yalın biçimi her defasında listenin tamamının üzerinden geçer: procedure cocktailSort( A : list of […]