Rumah > Artikel > pembangunan bahagian belakang > Bagaimanakah kita boleh menjana semua partition set yang mungkin dalam Python?
Set Partition dalam Python
Dalam Python, partition set ialah himpunan subset bercapah yang kesatuannya ialah set asal. Pertimbangkan tatasusunan [1,2,3]. Kami menyasarkan untuk menjana semua gabungan yang mungkin menggunakan semua elemen tatasusunan, menghasilkan sekatan seperti [[1], [2], [3]], [[1,2], [3]] dan seterusnya.
Untuk mencapai matlamat ini, kami menggunakan pendekatan rekursif. Untuk partition elemen "n-1", kami mempunyai dua pilihan apabila menggabungkan elemen "n": sama ada berikannya kepada subset sedia ada atau buat subset baharu. Proses menyeluruh ini memastikan penjanaan semua partition yang sah.
Contohnya, mari kita bahagikan tatasusunan [1,2,3]. Bermula dengan kes asas bagi satu elemen, kami menghasilkan [[1]]. Bergerak ke elemen seterusnya, kami memasukkan 2 ke dalam setiap subset partition [1], menghasilkan [[2], [1]]. Kami juga mencipta subset baharu [[2,1]].
Berterusan secara rekursif, kami memasukkan elemen 3 ke dalam partition. Kami memasukkan 3 ke dalam setiap subset partition [[2], [1]], menghasilkan [[3,2], [1]] dan [[2,3], [1]]. Kami juga mencipta subset baharu [[3,1],[2]].
Mengikut corak ini, kami menjana sepenuhnya semua partition yang mungkin bagi tatasusunan. Output yang terhasil ialah:
[[1], [2], [3]] [[1,2], [3]] [[1], [2,3]] [[1,3], [2]] [[1,2,3]]
Atas ialah kandungan terperinci Bagaimanakah kita boleh menjana semua partition set yang mungkin dalam Python?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!