欠落している数値を見つけるための PHP 方法: 1. PHP サンプル ファイルを作成します; 2. サンプル データの増加パターンを確認します; 3. "nums[i] == i" または "nums[i] > ; i" メソッドを使用して欠損値の位置を特定します。 4. "function missingNumber($nums) {...}" メソッドを定義して欠損数値を見つけます。
このチュートリアルの動作環境: Windows 7 システム、PHP バージョン 8.1、Dell G3 コンピューター。
PHP で欠落している数値を見つけるにはどうすればよいですか?
PHP 0 から n-1 までの欠損数を計算します
0 から n-1 までの欠損数
#A 長さは次のとおりです。 n-1 の昇順にソートされた配列内のすべての数値は一意であり、各数値の範囲は 0 から n-1 です。 0~n-1のn個の数値のうち、配列にない数値が1つだけありますので、その数値を探してください。
例 1:
输入: [0,1,3] 输出: 2
例 2:
输入: [0,1,2,3,4,5,6,7,9]
出力: 8
ソリューションのアイデア
シンプル二分探索では、質問の意味はすべての数値が増加していることは明らかであり、すべての数値の値の範囲は [0, n-1] 内にあり一意であるため、次のようなルールを見つけることができます。クエリ プロセス中に nums[i] == i である限り、欠損値は i の右側にある必要があります;
クエリ プロセス中に nums[i] > i の場合、欠損値は i の右側にある必要があります。値は左側にある必要があるため、最終的には min を結果として返すだけです。
コード
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; } }
推奨学習: 「
PHPビデオチュートリアル以上がPHP で欠落している数値を見つける方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。