non ho ancora provato il codice nuovo che hai postato, però io farei una cosa del genere... Calcoli il numero di parole della frase, crei un nuovo vettore e lo popoli con tanti elementi quante solo le parole, effettui le permutazioni su questo vettore. per ogni ordine che ottieni prendi ogni singolo numero e stampi la parola corrispondente