Rumah >pembangunan bahagian belakang >tutorial php >Bagaimana untuk Mencari Nilai Terdekat dalam Array?
Padanan Nilai Terhampir dalam Tatasusunan
Memandangkan tatasusunan nilai dan nilai sasaran, keperluan biasa adalah untuk mendapatkan nilai padanan yang paling hampir dalam tatasusunan. Ini boleh terbukti sangat berguna apabila berurusan dengan data yang tidak tepat atau apabila padanan tepat tidak tersedia.
Penyelesaian:
Untuk menentukan nilai padanan yang paling hampir, algoritma carian berulang boleh diambil bekerja. Berikut ialah fungsi PHP yang melaksanakan pendekatan ini:
function getClosest($search, $arr) { $closest = null; foreach ($arr as $item) { if ($closest === null || abs($search - $closest) > abs($item - $search)) { $closest = $item; } } return $closest; }
Fungsi ini beroperasi dengan membandingkan nilai sasaran secara berulang dengan setiap elemen dalam tatasusunan. Ia mengekalkan pembolehubah $closst untuk menjejaki nilai padanan terdekat yang ditemui. Untuk setiap perbandingan, ia mengira perbezaan mutlak antara sasaran dan elemen tatasusunan semasa. Jika perbezaan adalah lebih kecil daripada perbezaan yang direkodkan sebelum ini, ia mengemas kini pembolehubah $closest.
Contoh:
Menggunakan tatasusunan contoh yang disediakan:
$array = [0, 5, 10, 11, 12, 20];
Carian berikut boleh dilakukan:
Dengan mengulang tatasusunan dan menilai setiap elemen, algoritma ini cekap mencari nilai padanan yang paling hampir dengan sasaran.
Atas ialah kandungan terperinci Bagaimana untuk Mencari Nilai Terdekat dalam Array?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!