Semasa mengembangkan algoritma untuk menyelesaikan banyak masalah, masalah sering timbul ketika melaksanakan pencarian kumpulan data tertentu mengikut kriteria yang ditentukan. Semasa meneroka urutan yang teratur atau tidak tersusun, pencarian dapat dilakukan dengan menggunakan kaedah yang berbeza. Dalam kes umum, untuk menyelesaikan masalah pencarian, array data tertentu dipertimbangkan, di mana ia diperlukan untuk mencari elemen tertentu.
Arahan
Langkah 1
Cara termudah untuk mencari elemen yang dikenali dalam array data adalah melakukan iterasi atas nilainya. Algoritma ini optimum untuk sebilangan kecil maklumat. Intinya terletak pada melintasi urutan data (array) yang diketahui dan membandingkan setiap elemen dengan nilai yang diinginkan. Sekiranya perlawanan dijumpai, bergantung pada kriteria yang ditentukan, pencarian dapat diselesaikan atau dilanjutkan hingga akhir array.
Langkah 2
Namun, di sebalik kesederhanaan pelaksanaan kaedah ini, penggunaannya tidak diinginkan dalam tatasusunan yang mengandungi sejumlah besar maklumat, kerana ini secara signifikan meningkatkan intensiti sumber algoritma. Untuk mengoptimumkan carian dalam kes ini, lebih baik menetapkan pra-nilai nilai dalam array dan melaksanakan algoritma carian: dengan pokok binari, oleh pokok Fibonacci, dengan kaedah ekstrapolasi.
Langkah 3
Semasa bekerja dengan susunan teratur, gunakan algoritma yang lebih cekap - kaedah carian binari. Intinya terletak pada kenyataan bahawa dalam proses penghitungan batas selang satu sama lain, sehingga mempersempit kawasan pencarian. Bandingkan nilai yang anda cari dengan unsur nombor yang diberi nombor. Sekiranya sampel sesuai dengan elemen, masalah itu dianggap dapat diselesaikan Sekiranya item yang diinginkan lebih besar daripada elemen tengah, maka pencarian lebih lanjut mesti dilakukan di bahagian array yang terletak di sebelah kanan elemen tengah (dari awal array ke elemen tengah-1). Sekiranya carian kurang dari elemen tengah, maka carian diteruskan di bahagian array dari elemen tengah hingga yang terakhir. Setelah menentukan kawasan baru untuk carian, algoritma yang dijelaskan diulang, mengenal pasti padanan atau menyempitkan kawasan pemprosesan. Skema ini betul untuk susunan menurun.
Langkah 4
Masalah khusus untuk mencari elemen minimum atau maksimum dalam urutan tertentu diselesaikan dengan menetapkan elemen awal sebagai elemen yang diinginkan. Seterusnya, penghitungan berurutan dari nilai array yang tersisa dilakukan: yang kedua dengan yang pertama, yang ketiga dengan yang pertama, dll. Apabila membandingkan nilai yang diambil sebagai piawai, menjadi jelas apakah ada elemen dalam array yang lebih konsisten dengan keadaan yang diberikan (minimum atau maksimum). Apabila dijumpai, ia sudah diambil sebagai standard, dan penghitungannya berterusan dari kedudukan semasa hingga akhir array. Hasilnya, nilai minimum (atau maksimum) dalam kumpulan ini adalah elemen yang terakhir dikenali sebagai standard.