Rumah >pembangunan bahagian belakang >tutorial php >Bagaimanakah Saya Boleh Menjana Nombor Rawak Unik Dengan Cekap Dalam Julat Tertentu?

Bagaimanakah Saya Boleh Menjana Nombor Rawak Unik Dengan Cekap Dalam Julat Tertentu?

Barbara Streisand
Barbara Streisandasal
2024-12-14 02:05:09264semak imbas

How Can I Efficiently Generate Unique Random Numbers Within a Specific Range?

Menjana Nombor Rawak Unik dalam Julat: Pendekatan Dioptimumkan

Untuk menjana nombor rawak unik dalam julat yang ditentukan, pertimbangkan kaedah yang dipertingkatkan berikut:

Susunatur dengan Kocok Susunan:

  • Buat tatasusunan dengan nombor dalam julat yang diingini.
  • Gunakan shuffle() untuk rawak susunan unsur tatasusunan.
$numbers = range(1, 20);
shuffle($numbers);

Berbalut Fungsi:

  • Tentukan fungsi yang merangkumi logik untuk menjana nombor tertentu nombor rawak unik dalam julat.
  • Dalam fungsi, cipta tatasusunan dengan yang dikehendaki julat, kocok susunannya dan kembalikan sekeping tatasusunan yang mengandungi bilangan yang dikehendaki elemen.
function UniqueRandomNumbersWithinRange($min, $max, $quantity) {
    $numbers = range($min, $max);
    shuffle($numbers);
    return array_slice($numbers, 0, $quantity);
}

Contoh Penggunaan:

$result = UniqueRandomNumbersWithinRange(0, 25, 5);

Ini akan menjana dan mengembalikan tatasusunan 5 nombor tersusun rawak unik dalam julat 0- 25.

Sampel Keputusan:

$result = [14, 16, 17, 20, 1]

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Menjana Nombor Rawak Unik Dengan Cekap Dalam Julat Tertentu?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn