Alt Kümeler
Geri İzleme O(2^n) O(n)Her eleman için alma ya da dışarıda bırakma diye dallanarak bir kümenin tüm alt kümelerini üretir.
Küme: 1, 2, 3 · 0 / 8 bulundu
1/22
1 dahil ediliyor.
DeğişmezMevcut liste, ilk i eleman için verilmiş bir karardır: içinde ya da dışında.
subsets.c
void subsets(int a[], int n, int i, int cur[], int k) {if (i == n) {printSubset(cur, k);return;}cur[k] = a[i]; /* include a[i] */subsets(a, n, i + 1, cur, k + 1);/* backtrack: exclude a[i] */subsets(a, n, i + 1, cur, k);}
Alt Kümeler nasıl çalışır?
Her eleman için ikili karar ver: içeride mi dışarıda mı. Özyineleme ağacının 2ⁿ yaprağı vardır — her yaprak tam olarak bir alt kümedir.
Ne zaman kullanılır?
Kaba kuvvet kontrolleri, kuvvet kümeleri, öznitelik alt kümeleri için tüm kombinasyonları sayma.