kedudukan i"; 4. Cari nombor yang hilang dengan mentakrifkan kaedah "function missingNumber($nums) {...}"."/> kedudukan i"; 4. Cari nombor yang hilang dengan mentakrifkan kaedah "function missingNumber($nums) {...}".">
Rumah > Artikel > pembangunan bahagian belakang > Bagaimana untuk mencari nombor yang hilang dalam PHP
Cara mencari nombor yang hilang dalam PHP: 1. Buat fail sampel php; 2. Semak corak pertumbuhan data sampel; ] > ; i" kaedah untuk menentukan lokasi nilai yang hilang; 4. Cari nombor yang hilang dengan mentakrifkan kaedah "function missingNumber($nums) {...}".
Persekitaran pengendalian tutorial ini: sistem Windows 7, PHP versi 8.1, komputer Dell G3.
Bagaimana untuk mencari nombor yang hilang dalam PHP?
PHP mengira nombor yang hilang dari 0 hingga n-1
Nombor yang hilang dari 0 hingga n-1
Sepanjang Semua nombor dalam tatasusunan diisih menaik bagi n-1 adalah unik, dan setiap nombor berada dalam julat 0 hingga n-1. Antara n nombor dalam julat 0~n-1, hanya ada satu nombor yang tiada dalam tatasusunan Sila cari nombor ini.
Contoh 1:
输入: [0,1,3] 输出: 2
Contoh 2:
输入: [0,1,2,3,4,5,6,7,9]
Output: 8
Idea penyelesaian masalah
Carian binari yang mudah, maksud soalan adalah jelas bahawa semua nombor semakin meningkat, dan julat nilai semua nombor berada dalam [0, n-1] dan unik, jadi kita boleh menemui peraturan sedemikian:
Selagi nums[i] == i semasa proses pertanyaan, maka nilai yang hilang mesti berada di sebelah kanan i; proses pertanyaan, maka nilai yang hilang mesti berada di sebelah kiri, jadi pada akhirnya hanya kembalikan min sebagai hasilnya.
Kod
Pembelajaran yang disyorkan: "class Solution { /** * @param Integer[] $nums * @return Integer */ function missingNumber($nums) { $min = 0; $max = count($nums) - 1; while ($min <= $max) { $mid = (int)($min + ($max - $min) / 2); $mid == $nums[$mid] ? $min = $mid + 1 : $max = $mid - 1; } return $min; } }Tutorial Video PHP
Atas ialah kandungan terperinci Bagaimana untuk mencari nombor yang hilang dalam PHP. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!