Como você calcula permutações de uma palavra?

Para a primeira parte desta resposta, assumirei que a palavra não possui letras duplicadas.

Para calcular o quantidade permutações de uma palavra, isso é tão simples quanto avaliar #n!#, onde n é a quantidade de letras. Uma palavra com letras 6 possui #6! =6*5*4*3*2*1=720# permutações diferentes.

Escrever todas as permutações é geralmente muito difícil ou uma tarefa muito longa. Como você pode perceber, as "palavras" diferentes do 720 levarão muito tempo para serem escritas. Existem algoritmos e programas de computador para ajudá-lo, e essa é provavelmente a melhor solução.

A segunda parte desta resposta lida com palavras que têm letras repetidas. Uma fórmula é
#(n!)/(m_A!m_B!...m_Z!)#
onde #n# é a quantidade de letras na palavra e #m_A,m_B,...,m_Z# são as ocorrências de letras repetidas na palavra. Cada #m# é igual à quantidade de vezes que a letra aparece na palavra. Por exemplo, na palavra "paz", #m_A = m_C = m_P = 1# e #m_E = 2#. Portanto, a quantidade de permutações da palavra "paz" é:
#(5!)/(1!*1!*1!*2!) = (5*4*3*2*1)/(1*1*1*2*1) = 60#

Vou passar por mais dois exemplos, mas ignorarei todas as instâncias de #1!# desde #1! =1#.

Para a palavra "comitê":
#m_C = m_O = m_I = 1#
#m_M = m_T = m_E = 2#
Permutações: #(9!)/(2!2!2!) = (9*8*7*6*5*4*3*2*1)/((2*1)*(2*1)*(2*1)) = 45,360#

Para a palavra "queijo":
#m_C = m_H = m_S = 1#
#m_E = 3#
Permutações: #(6!)/(3!) = (6*5*4*3*2*1)/(3*2*1) = 120#