Algoritma Nedir? Algoritma Örnekleri | Algoritma ve Programlama

Algoritma ne demek kısaca anlatırsak, bizi bir problemin çözümüne adım adım götüren kurallar dizisidir. Algoritma nedir sorusuna günlük hayatımızdan bir örnek vermek gerekirse, yemek tarifleri basit birer algoritmadır.

Bir pastanede, pasta ustası bir tarifi her zaman aynı şekilde uyguladığında, pastanın tadı daima aynı olacaktır. Ne zamanki tariften azıcık uzaklaşıp kendi yorumunu katmaya çalışır, o zaman pastanın tadı değişir.

Algoritmalar da böyledir; her adım kendisinden önceki ve sonraki adımlarla doğrudan ilişkili olduğundan, bunlardan yapılacak değişiklikler, tüm akışı değiştirecek, başka bir deyişle bozacaktır.

Algoritma nedir sorusuna basitçe cevap verdikten sonra, daha iyi anlamak için örnekler üzerinden gidelim. Bu örnekler, konuyu anlamanızı kolaylaştırıp, günlük hayattaki sorunlara algoritma mantığı ile yaklaşmanızı sağlayacak:

Günlük hayatımızdan başka örnekler verelim. Bugün cumartesi ve ne yapacağınızı planlamak istiyorsunuz. Bunun için kendinize sorular sorarak başlarsınız:

Yalnız mı kalmak istiyorum? Arkadaşlarımla vakit geçirmek istiyor muyum? Evde mi kalmalıyım? Hava güzelse dışarı mı çıkmalıyım? Film izlemeyi mi tercih etmeliyim?

Her adımda, bir ya da daha fazla parametreyi dikkate alacaksınız. Adımlar ilerledikçe, hava durumu gibi verileri dışarıdan alarak (input) seçim yapacaksınız:

  1. Yalnız kalmak istemiyorsanız arkadaşlarınızla vakit geçirmeyi seçeceksiniz,
  2. Hava güneşli ise dışarıda vakit geçirmeyi tercih edeceksiniz,
  3. Arkadaşlarınız müsaitse, sinemaya değil parka gitmeyi düşüneceksiniz

Bu adımları bir akış diyagramı şeklinde ifade ettiğimizde, bir cumartesi algoritması elde edeceğiz. Bilgisayarlar da benzer algoritmalar kullanır. Bilgisayar algoritmaları, onlara bir işlemi yapmak için izlemeleri gereken adımları gösterir. Bunlar, 1 ve 0’lardan oluşan talimat dizileridir.

Algoritma ve Programlama

Algoritma ne demek öğrendiğimize göre, bilgisayar ve algoritma kullanımına biraz daha eğilebiliriz. Örneğin Google, kullandığı algoritmalar ile, bize aradığımız bilgiyi anında sunabiliyor. Yaptığımız aramalarla ilgili reklamlar gösteriyor. Google haritalar uygulaması, gideceğimiz yere bizi en kısa yoldan ulaştıracak yolu hesaplayabiliyor.

Google’ın kullandığı algoritmaları programcılar ve matematikçiler birlikte tasarladı. Başlangıçta, bir arama sorgusu için tüm interneti taramanın çok uzun süreceğini keşfettiler. Daha sonra, birbirine bağlantı veren sayfaları incelediler. En sonunda, en fazla bağlantı alan sayfaların, en değerli sayfalar olduğunu keşfettiler ve bu sayfalara öncelik verdiler. Dolayısı ile, size değerli içerik sunmanın basit ama etkili bir formülü, bir algoritma şeklinde ifade etmenin yolunu buldular.

Bilgisayarlar, problemleri algoritma akış şeması kullanarak çözmeye çalışır. Bunu yaparken sürekli yeni veri toplamaya çalışırlar. Örneğin akıllı telefonlarımızdaki harita uygulamaları, en kısa rotayı bulmaya çalışır. Ancak bunu yaparken, sadece mesafeye değil, trafik sıkışıklığına bağlı olarak süreyi de hesaplar.

Bu algoritmalar, gerektiğinde trafik veritabanına bağlanıp kazı çalışmalarını veya kaza durumlarını güncel olarak öğrenir. Bütün bu verileri topladıktan sonra, size birkaç seçenek sunar ve seçiminizden sonra size yardımcı olur.

Algoritma Örnekleri

Algoritma örnekleri arasında en bilindik olanları, koşullu ifadelerdir. Bunlar, eğer a ise, o zaman b şeklinde yol izleyen if / then ifadeleridir. Cumartesi günümüzü planladığımız algoritmaya dönecek olursak, biz de bilgisayar algoritması gibi davrandık: Eğer hava güneşli ise, o zaman dışarıda vakit geçirebiliriz ifadesi, bir if / then koşuludur.

Hava güneşli ise, bir sonraki adıma geçtik ve ne yapabileceğimizi düşündük. Hava güneşli olmasaydı, bu sefer evde kalacak ve bu yönergeyi sonlandırıp, yeni bir yönergeyi izleyecektik.

Algoritmalar sadece bize yol göstermez, aynı zamanda veri de toplar ve bu verileri işler. Google örneğindeki gibi, yaptığımız aramalara göre ilgi alanlarımızı belirler ve bize uygun reklamlar sunar. Algoritma borsa uygulamalarının da vazgeçilmez yardımcısıdır. Karmaşık programlar hisse senetlerinin verilerini analiz edip, bize yükselip yükselmeyeceklerini analiz eder.

Algoritma Çeşitleri

Hayatın her alanında algoritmalara başvuruyoruz. Doktorlar salgın hastalıkların nasıl yayıldığını açıklamak için çeşitli algoritmaları kullanıyor. Kasırga tahminleri için, meteorologlar çeşitli algoritma modelleri geliştiriyor.

Gelecekte, bilgisayarlara karmaşık verileri nasıl daha iyi işleyebileceklerini öğreten algoritmalarla gündelik sorunlara daha iyi çözümler bulacağız. Makine öğrenimi (machine learning) ve veri analizi alanları, algoritma geliştiriciliğinin günümüzdeki temel alanları.

Bütün bunlar, algoritma akış şeması çok iyi düzenlenmiş ve iyi kodlanmış uygulamalar sayesinde gerçekleştiriliyor. Günümüzde, makine öğrenmesi ve veri analizi konusunda en yaygın programlama dili, Python programlama dilidir.

Algoritma analizi ile son yıllarda hızla ilerleme kaydettiğimiz başka bir alan da, görüntü işlemedir. Yeni yöntemlerle fotoğrafları daha işliyor ve örneğin fotoğrafın hangi bitkiye ait olduğunu anlayabiliyoruz. Bu algoritmalar, henüz bitkiler üzerinde insanlara göre daha iyi sonuç veriyor. Bunun en büyük nedeni, gözlük, bıyık ve sakal kesimi gibi değişiklikler ile, algoritmanın kolayca aldatılabilmesi. Yine de, eskiye göre çok daha hızlı ve isabetliler.

Günümüzde, bilgisayar mühendisliğinin yanısıra yapay zeka mühendisliği de, algoritma şekilleri ile yaygın olarak çalışan başka bir mühendislik dalıdır.

Algoritma Anlamı Nedir?

9. yüzyılda, ünlü bir matematikçi ve astronom bilimde, matematikte ve şu anda kullandığımız sayı sisteminde birçok keşif yaptı. Onun adı Muhammed ibn Mūsa al-Harezmi idi. Soyadı, doğduğu yer olan Harezm‘den geliyor. Yüzyıllar boyunca, şöhreti arttıkça, Orta Doğu dışındaki insanlar adını Algoritmi olarak değiştirdiler. Adının bu versiyonu daha sonra, artık algoritmalar olarak bildiğimiz adım adım tarifleri tanımlayan İngilizce terim olarak uyarlanacaktı.

Yorum yapın