Computer >> Máy Tính >  >> Lập trình >> PHP

Chương trình PHP để tìm các số ‘n’ đầu tiên bị thiếu trong một mảng

Để tìm số ‘n’ đầu tiên bị thiếu trong một mảng, mã PHP như sau -

Ví dụ

<?php
   function missing_values($my_arr, $len, $n){
      sort($my_arr); sort($my_arr , $len);
      $i = 0;
      while ($i < $n && $my_arr[$i] <= 0)
      $i++;
      $count = 0; $curr = 1;
      while ($count < $n && $i < $len){
         if ($my_arr[$i] != $curr){
            echo $curr , " ";
            $count++;
         }
         else
            $i++;
            $curr++;
      }
      while ($count < $n){
         echo $curr , " ";
         $curr++;
         $count++;
      }
   }
   $my_arr = array(6, 8, 0);
   $len = sizeof($my_arr);
   $n = 5;
   print_r("The missing values of the array are ");
   missing_values($my_arr, $len, $n);
?>

Đầu ra

The missing values of the array are 1 2 3 4 5

Trong đoạn mã trên, một hàm có tên là "missing_values" được xác định, hàm này nhận mảng, độ dài và một vài số đầu tiên bị thiếu trong mảng.

Một biến được gán cho 0 và được kiểm tra nếu một vài số đầu tiên cần tìm là 0 hoặc nhiều hơn. Nếu nó là 0, nó sẽ tăng lên.

Một số đếm được gán cho 0 và giá trị curr được gán cho 1. Tiếp theo, giá trị đếm và mảng phần tử ‘n’ đầu tiên được so sánh và giá trị thứ ‘i’ được so sánh với độ dài. Nếu curr giống với một trong các phần tử của mảng, giá trị đếm được tăng lên. Nếu không, giá trị ‘i’ được tăng lên. Ngoài hàm này, mảng được định nghĩa và biến ‘len’ được gán cho độ dài của mảng.

Các phần tử ‘n’ đầu tiên được gán là 5. Hàm được gọi bằng cách chuyển các giá trị này làm tham số và đầu ra được in trên bảng điều khiển.