Una sequenza binaria di lunghezza è solo una sequenza ordinata modo che ogni sia o . Per generare tutte queste sequenze binarie, si può usare l'ovvia struttura ad albero binario nel modo seguente: la radice è "vuota", ma ogni figlio sinistro corrisponde all'aggiunta di alla stringa esistente e ogni figlio destro a un . Ora, ogni sequenza binaria è semplicemente un percorso di lunghezza inizia dalla radice e termina in corrispondenza di una foglia.
Ecco la mia domanda:
Possiamo fare di meglio se vogliamo solo generare tutte le stringhe binarie di lunghezza che abbiano esattamente zeri e ?
Con "possiamo fare di meglio", voglio dire che dovremmo avere una complessità inferiore all'algoritmo sciocco che prima costruisce l'intero albero sopra e poi cerca di trovare quei percorsi con un uguale numero di bordi "sinistro" e "destro".