Können Sie erklären, diese rekursive "n wählen k" - code für mich?

Hier ist der code, um eine Teilmenge problem mit Argumente n und k. n stellt die Gesamtzahl der Studierenden und k repräsentiert die Menge der Studenten, die ich will, um aus der n. Der code versucht die Anzahl der möglichen Kombinationen von ziehen k Anzahl der Studierenden aus n Anzahl der Studierenden.

def subset(n, k): 
    if k == 0:
        return 1
    if n == k:
        return 1
    else:
        return subset(n-1, k-1) + subset(n-1, k)

Ich verstehe den ersten Teil des rekursiven Aufrufs, aber ich habe Schwierigkeiten zu verstehen, die + Teilmenge(n-1, k) Teil. Kann jemand erklären mir das an?

Schreibe einen Kommentar