• Şimdi algoritmanın tanımını ve özelliklerini günlük yaşamdan basit bir örnekle pekiştirelim. Diyelim ki araç trafiği olan bir yolda karşıya geçmek istiyoruz. Bu durumda çözmemiz gereken problem (buna yapılması gereken iş de diyebiliriz) karşıya geçmektir. O zaman bu problemin çözümü için bir yol bulmamız gerekiyor.
  • Şöyle bir ifadeye ne dersiniz?
  • Önce araba var mı kontrol et, ardından yürü!
  • Bu ifade özünde doğrudur. Ancak yeterince açık değildir. Bunu hayatında ilk defa karşıdan karşıya geçecek birine söylersek, kim bilir nasıl anlar?
  • Yolun kenarına park etmiş araba var mı? Evet var. O zaman kaldırımdan yürüyeyim.
  • Yolun kenarına park etmiş araba var mı? Hayır yok. O zaman yolun ortasından yola paralel yürüyeyim.
  • Sol taraftan gelen araba var mı? Hayır yok. O zaman sola bakarak karşıya yürüyeyim
    • Bu böylece sürüp gider.
  • Evet, biz yetişkin ve eğitimli insanlar “Önce araba var mı kontrol et, ardından yürü! ifadesinden verilmek istenen mesaji açıkça alırız. Ancak bilgisayarlar öyle değildir. Onları uzaydan gelmiş yaratıklar gibi düşünebiliriz. Hiçbir şey bilmezler. Ama onlara detaylı olarak verdiğimiz bütün emirleri yerine getirebilirler.
  • lyi tarif edersek, herşeyi hizlica anlayıp kolayca uygulayabilirler.
  • Şimdi problemi daha net ve kesin ifadelerle çözmeye çalışalım. Ama nereden başlayacağız? Evde miyiz? Trafik işıklarının yanında mıyız? Yaya geçidinin önünde miyiz? Bu gibi durumlar önemlidir.
  • Bu örnekte yolun kenarındayız ve trafik işıği yok. O zaman şöyle yapalım: Önce yürüyelim, sonra sola ve sağa bakalım (tabi eğer ezilmeden karşıya geçebildiysek). Olur mu? Işimiz şansa kalır. Eğer araba yoksa olur. Araba varsa ezilme ihtimalimiz var.
  • O zaman adımları gerçekleştirme sırası da önemli. Yolun kenarından başlayıp, önce sola bakmalı, gelen araba yoksa ya da karşıya geçebileceğimiz kadar uzak bir mesafedeyse sağa bakılmalı. Sağ tarafta da araç yoksa ya da gelen araç yeterince uzak mesafedeyse karşıya yürünmeli.
  • Şimdi biraz  daha  iyi bir  çözüm yolu bulmuş olduk. Peki, şuna ne dersiniz?
  • Bulunduğumuz tarafta, araç trafiği sağdan aktiğı için, önce sola bakalim. Sonra da sağ taraftan araba geliyor mu diye sağa bakalım. Acaba biz sağa bakarken soldan gelen bir araba olmuş mudur diye şimdi tekrar sola bakalım. Bu arada ya sağdan bir araba geliyorsa! Tekrar sağa mı baksak.Ya soldan araba geliyorsa..
  • Gördüğünüz gibi yukarıdaki gibi düşünürsek sonsuz bir döngüye gireriz.Ya da araba yoksa, yürü!”  ifadesi gereği sonsuza kadar yürüyecek miyiz? Bu yüzden algoritmalar sonlu sayıda adımdan ve bir bitiş durumundan oluşmalıdır. Yoksa zaten problem çözülmüş olmaz. Yolun bu tarafında kala kalırız. Veya sonsuza kadar yürümeye devam ederiz.

Agile algoritma algoritmalara giriş bilgisayar bilgisayar mühendisliği Bootcamp c# ders notu devlet üniversiteleri dgs dikey geçiş sınavı erp istatistik izmir bakırçay üniversitesi iş hayatı kanun kariyer kpss meslek nasıl iş bulurum Optimizasyon programlamaya giriş Python savunma sanayi Scrum SDLC staj sıralama taban puan tbt ders notu teknoloj teknoloji tercih vakıf üniversiteleri veri bilimi veri tabanı yapay zeka yazılım ybs ybs ne iş yapar ybs ya ybs üniversiteleri yönetim bilişim sistemleri Yöneylem ösym