Rumah > Artikel > pembangunan bahagian belakang > Bagaimanakah Saya Boleh Menjana Semua Subset Unik Array dengan Cekap dalam PHP?
Mencari Subset Tatasusunan dalam PHP
Tugas mencari subset unik tatasusunan boleh menjadi sangat mencabar apabila berurusan dengan bilangan yang besar daripada unsur. Kami berusaha untuk mencipta set subset yang komprehensif, memastikan tiada pengulangan berlaku.
Sebagai contoh, memandangkan tatasusunan atribut {A, B, C, D}, kami ingin menjana semua subset yang mungkin, termasuk elemen individu dan gabungannya: {A, B, C, D, AB, AC, AD, BC, BD, CD, ABC, ABD, BCD, ABCD}.
Menggunakan Array Merge untuk Penjanaan Set Kuasa
PHP menyediakan penyelesaian padat untuk penjanaan set kuasa menggunakan fungsi array_merge.
function powerSet(array $array) : array { $results = [[]]; foreach ($array as $element) { foreach ($results as $combination) { $results[] = [...$combination, $element]; } } return $results; } // Example usage: $ATTRIBUTES = ['A', 'B', 'C', 'D']; $SUBSETS = powerSet($ATTRIBUTES);
Tatasusunan $SUBSETS yang terhasil akan mengandungi semua subset tidak berulang bagi tatasusunan asal.
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Menjana Semua Subset Unik Array dengan Cekap dalam PHP?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!