Arama algoritmaları, bilgisayar biliminde seçili özelliklere göre istenilen bilgileri bulan algoritmalardır. Listeler, metinler ve şekiller üzerinde çalışırlar.
Türleri
İkili arama algoritması
Aranılan diziyi ikiye bölecek şekilde bir eleman seçilir. Sağındaki ve solundakilere bakılır. Algoritmanın çalışması için dizinin sıralı olması koşulu bulunmaktadır. Bu şekilde aranan sayı bulunana kadar işlem yapılır. Algoritmanın çalışması örnek üzerinden şu şekilde açıklanmıştır:
[1,2,4,7,9,11,15]
şeklinde bir dizi verilmiş olduğunda, aradığımız sayının da 4 olduğunu kabul ettiğimiz takdirde, dizinin eleman sayısı 7'dir. Bu durumda ortadaki eleman 4. eleman olarak seçilir ve 7 sayısı ile aranan sayı kontrol edilir. 4<7 olduğu için 4. elemanın solundaki sayılara bakılır:
[1,2,4]
şeklinde elde edilen yeni alt dizinin üzerinde algoritma yeniden çalıştırılır. Dizinin eleman sayısı 3'tür ve ortadaki elemanı 2. eleman olarak seçilir. Eleman değeri 2'dir ve aranan değer 4 ile karşılaştırılır. 4>2 olduğu için 2. elemanın sağ tarafında arama devam eder:
[4]
Tek başına aranan elemanın bulunduğu 4 değeri kaldığından dolayı, bu değer ile aranan değer karşılaştırıldığında aranan değere ulaşılmış olur.
Enine arama (Sığ öncelikli arama)
Bütün çizge aramalarında ve özellikle ağaç aramalarında daha sık kullanılır. Başlangıç düğümüne yakın düğümleri dolaşarak yoluna devam eder. Bir seviye uzaklaşmadan önce, o seviyeye kadar olan bütün düğümleri dolaşmış olması gerekir. Örneğin; ağaç araması sırasında, her satırda soldan sağa olmak üzere sıra ile bulana kadar arama yapar. Aranan düğüme ulaşmadan önce, aranan düğüm ile başlangıç düğümü arasındaki seviyelerde bulunan bütün düğümleri dolaşmak zorunda olması gibi bir dezavantajı vardır. Bu durum, algoritmanın hedefi bulmasını geciktirir. Resimdeki öncelik A-B-C-D-E-F-G-H-I-İ-J şeklindedir.
Ayrıca ağaç olmayan bir çizgede de kullanılabilir. Örneğin aşağıdaki şekilde 1'den başlanarak dolaşılması halinde, öncelik 1-2-5-3-4-6 olacaktır.
Derin Öncelikli Arama (Depth First Search-DFS)
Ağaç yapılarında kullanılır. Arama işlemine, Yukarıdan aşağıya sol öncelikli olarak arama yapar. Resimdeki aramada öncelik A-B-C-D-E-F-G-H-I-İ-J şeklindedir.
Enine arama algoritmasında verilen örnek grafın aynısı derin öncelikli olarak aransaydı, muhtemel arama sıralamalarından birisi 1-5-4-6-2-3 olabilirdi
Ayrıca bakınız
Dış bağlantılar
- Bilgisayar Kavramları : Arama Algoritmaları 4 Nisan 2012 tarihinde Wayback Machine sitesinde .
wikipedia, wiki, viki, vikipedia, oku, kitap, kütüphane, kütübhane, ara, ara bul, bul, herşey, ne arasanız burada,hikayeler, makale, kitaplar, öğren, wiki, bilgi, tarih, yukle, izle, telefon için, turk, türk, türkçe, turkce, nasıl yapılır, ne demek, nasıl, yapmak, yapılır, indir, ücretsiz, ücretsiz indir, bedava, bedava indir, mp3, video, mp4, 3gp, jpg, jpeg, gif, png, resim, müzik, şarkı, film, film, oyun, oyunlar, mobil, cep telefonu, telefon, android, ios, apple, samsung, iphone, xiomi, xiaomi, redmi, honor, oppo, nokia, sonya, mi, pc, web, computer, bilgisayar
Arama algoritmalari bilgisayar biliminde secili ozelliklere gore istenilen bilgileri bulan algoritmalardir Listeler metinler ve sekiller uzerinde calisirlar TurleriIkili arama algoritmasi Aranilan diziyi ikiye bolecek sekilde bir eleman secilir Sagindaki ve solundakilere bakilir Algoritmanin calismasi icin dizinin sirali olmasi kosulu bulunmaktadir Bu sekilde aranan sayi bulunana kadar islem yapilir Algoritmanin calismasi ornek uzerinden su sekilde aciklanmistir 1 2 4 7 9 11 15 seklinde bir dizi verilmis oldugunda aradigimiz sayinin da 4 oldugunu kabul ettigimiz takdirde dizinin eleman sayisi 7 dir Bu durumda ortadaki eleman 4 eleman olarak secilir ve 7 sayisi ile aranan sayi kontrol edilir 4 lt 7 oldugu icin 4 elemanin solundaki sayilara bakilir 1 2 4 seklinde elde edilen yeni alt dizinin uzerinde algoritma yeniden calistirilir Dizinin eleman sayisi 3 tur ve ortadaki elemani 2 eleman olarak secilir Eleman degeri 2 dir ve aranan deger 4 ile karsilastirilir 4 gt 2 oldugu icin 2 elemanin sag tarafinda arama devam eder 4 Tek basina aranan elemanin bulundugu 4 degeri kaldigindan dolayi bu deger ile aranan deger karsilastirildiginda aranan degere ulasilmis olur Enine arama Sig oncelikli arama Butun cizge aramalarinda ve ozellikle agac aramalarinda daha sik kullanilir Baslangic dugumune yakin dugumleri dolasarak yoluna devam eder Bir seviye uzaklasmadan once o seviyeye kadar olan butun dugumleri dolasmis olmasi gerekir Ornegin agac aramasi sirasinda her satirda soldan saga olmak uzere sira ile bulana kadar arama yapar Aranan dugume ulasmadan once aranan dugum ile baslangic dugumu arasindaki seviyelerde bulunan butun dugumleri dolasmak zorunda olmasi gibi bir dezavantaji vardir Bu durum algoritmanin hedefi bulmasini geciktirir Resimdeki oncelik A B C D E F G H I I J seklindedir Oncelik sirasi A B C D E F G H I I J Ayrica agac olmayan bir cizgede de kullanilabilir Ornegin asagidaki sekilde 1 den baslanarak dolasilmasi halinde oncelik 1 2 5 3 4 6 olacaktir Oncelik sirasi 1 2 5 3 4 6Derin Oncelikli Arama Depth First Search DFS Agac yapilarinda kullanilir Arama islemine Yukaridan asagiya sol oncelikli olarak arama yapar Resimdeki aramada oncelik A B C D E F G H I I J seklindedir Oncelik sirasi A B C D E F G H I I J Enine arama algoritmasinda verilen ornek grafin aynisi derin oncelikli olarak aransaydi muhtemel arama siralamalarindan birisi 1 5 4 6 2 3 olabilirdi Oncelik sirasi 1 5 4 6 2 3Ayrica bakinizDizi arama algoritmasi Komut cizelgesi Sezgisel algoritma Tanrinin algoritmasiDis baglantilarBilgisayar Kavramlari Arama Algoritmalari 4 Nisan 2012 tarihinde Wayback Machine sitesinde