首頁  >  文章  >  每日程式設計  >  PHP檢查數組中缺少的數字

PHP檢查數組中缺少的數字

藏色散人
藏色散人原創
2019-01-21 13:56:416198瀏覽



PHP檢查陣列中可能缺少的數字,也可以理解為計算兩個陣列中元素的差集。那這裡我們就可以透過PHP中range和array_diff這兩個函數來實現。

PHP檢查數組中缺少的數字

推薦參考學習:《PHP教學

下面我們就結合具體的程式碼範例,為大家介紹PHP檢查數組中可能缺少的數字的方法。

程式碼範例如下:

<?php
//PHP检查数组中可能缺少的数字
function aaa($num_list){
    
    //创建一个数组
    $new_arr = range($num_list[0],max($num_list));
    
    //使用array_diff查找缺少的元素
    return array_diff($new_arr,$num_list);
}
echo "<pre class="brush:php;toolbar:false">";
print_r(aaa(array(1,2,3,6,7,8)));

print_r(aaa(array(10,11,12,14,15,16,17)));

這裡我們建立了一個aaa方法,用來計算上述程式碼中兩個陣列分別所缺少的數字。

輸出缺少的元素如下:

PHP檢查數組中缺少的數字

如圖,第一個陣列缺少了數字4,5;第二個陣列缺少了數字13。

重要函數介紹:

range 函數表示根據範圍建立數組,包含指定的元素

語法:

range ( mixed $start , mixed $end [, number $step = 1 ] ) : array

建立一個包含指定範圍單元的陣列。

參數 :start表示序列的第一個值。 end表示序列結束於 end 的值。 step表示如果設定了步長 step,會被當作單元之間的步進值。 step 應該為正值。不設定step 則預設為 1。

傳回值是,傳回的陣列中從 start 到 end (含 start 和 end)的單元。

array_diff 函數表示計算數組的差集

語法:

array_diff ( array $array1 , array $array2 [, array $... ] ) : array

對比array1 和其他一個或多個數組,傳回在array1 中但是不在其他array 裡的值。

參數:array1表示要被比較的陣列;array2表示和這個陣列比較;...表示更多比較的陣列。

傳回值表示傳回一個數組,該數組包含了所有在 array1 中但是不在任何其它參數數組中的值。注意鍵名保留不變。

這篇文章是關於PHP檢查陣列中可能缺少的數字的方法介紹,也是PHP面試常見考題之一,非常簡單,希望對需要的朋友有所幫助!



以上是PHP檢查數組中缺少的數字的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

相關文章

看更多