Birçok sorunu çözmek için algoritmalar geliştirirken, genellikle belirli bir veri grubunu belirtilen kriterlere göre aramanın uygulanması sorunu ortaya çıkar. Sıralı veya sırasız bir diziyi araştırırken, arama farklı yöntemler kullanılarak gerçekleştirilebilir. Genel durumda, arama problemini çözmek için, belirli bir öğeyi bulmanın gerekli olduğu belirli bir veri dizisi dikkate alınır.
Talimatlar
Aşama 1
Bir veri dizisinde bilinen bir öğeyi bulmanın en kolay yolu, değerleri üzerinde yineleme yapmaktır. Bu algoritma, az miktarda bilgi için idealdir. Özü, bilinen bir veri dizisini (dizi) geçmek ve her bir elemanı istenen değerle karşılaştırmaktır. Bir eşleşme bulunursa, belirtilen kriterlere bağlı olarak arama tamamlanabilir veya dizinin sonuna kadar devam edilebilir.
Adım 2
Bununla birlikte, bu yöntemin uygulanmasının basitliğine rağmen, büyük miktarda bilgi içeren dizilerde kullanılması istenmez, çünkü bu, algoritmanın kaynak yoğunluğunu önemli ölçüde arttırır. Bu durumda aramayı optimize etmek için, dizideki değerleri önceden sıralamak ve arama algoritmalarını uygulamak daha iyidir: ikili ağaç, Fibonacci ağacı, ekstrapolasyon yöntemi.
Aşama 3
Sıralı bir diziyle çalışırken, daha verimli bir algoritma kullanın - ikili arama yöntemi. Özü, aralığın sınırlarının numaralandırılması sürecinde birbirine yaklaşması ve böylece arama alanını daraltmasıdır. Aradığınız değeri dizinin numaralı öğesiyle karşılaştırın. Örnek elemanla eşleşirse, problem çözülmüş olarak kabul edilir. İstenen öğe ortadaki öğeden büyükse, dizinin ortadaki öğenin sağında bulunan kısmında (dizinin başından ortadaki öğe-1'e) daha fazla arama yapılmalıdır. Arama ortadaki elemandan daha az ise, arama dizinin ortasından son elemana kadar olan kısmında devam eder. Arama için yeni bir alan belirledikten sonra, açıklanan algoritma tekrarlanır, eşleşmeler belirlenir veya işlem alanı daraltılır. Bu şema, azalan bir dizi için doğrudur.
4. Adım
Belirli bir dizideki minimum veya maksimum öğeyi bulmanın belirli sorunları, başlangıç öğesinin istenen öğe olarak atanmasıyla çözülür. Ardından, dizinin kalan değerlerinin sıralı bir sayımı gerçekleştirilir: ikincisi birincisi, üçüncüsü birincisi, vb. Standart olarak alınan değer karşılaştırıldığında, dizide verilen koşulla (minimum veya maksimum) daha tutarlı bir öğe olup olmadığı anlaşılır. Biri bulunduğunda, zaten standart olarak alınır ve numaralandırma mevcut konumdan dizinin sonuna kadar devam eder. Sonuç olarak, bu gruptaki minimum (veya maksimum) değer, standart olarak en son tanınan unsurdur.