Home > Backend Development > PHP Problem > How to find missing numbers in PHP

How to find missing numbers in PHP

藏色散人
Release: 2023-03-17 15:46:02
Original
5312 people have browsed it

PHP method to find missing numbers: 1. Create a php sample file; 2. Check the growth pattern of the sample data; 3. Through "nums[i] == i" or "nums[i] > ; i" method to determine the location of missing values; 4. Find missing numbers by defining the "function missingNumber($nums) {...}" method.

How to find missing numbers in PHP

The operating environment of this tutorial: Windows 7 system, PHP version 8.1, Dell G3 computer.

How to find missing numbers in PHP?

PHP Calculate the missing numbers from 0 to n-1

The missing numbers from 0 to n-1

A length is All numbers in an ascending sorted array of n-1 are unique, and each number is in the range 0 to n-1. Among the n numbers in the range 0~n-1, there is only one number that is not in the array. Please find this number.

Example 1:

输入: [0,1,3]
输出: 2
Copy after login

Example 2:

输入: [0,1,2,3,4,5,6,7,9]
Copy after login

Output: 8

Solution ideas

Simple binary search, the meaning of the question is clear that all numbers are increasing, and the value range of all numbers is in [0, n-1] and is unique, so we can find such a rule:

As long as nums[i] == i during the query process, then the missing value must be on the right side of i;

If nums[i] > i during the query process, then the missing value must be on the left side; So in the end, just return min as the result.

Code

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;
    }
}
Copy after login

Recommended learning: "PHP Video Tutorial"

The above is the detailed content of How to find missing numbers in PHP. For more information, please follow other related articles on the PHP Chinese website!

Related labels:
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template