Documentos de Académico
Documentos de Profesional
Documentos de Cultura
10 de mayo de 2019
PERMUTACIONES
Introducción (1)
Combinaciones—
Permutaciones— El orden no
El orden importa! importa!
Combinaciones—
Permutaciones— El orden no
El orden importa! importa!
Con reemplazo
Sin reemplazo
Introducción (3)
Ejemplo: Calcule el número de casos que se tienen al lanzar 6 veces un dado si
se toman en cuenta sólo aquellos casos que correspondan a un número
diferente.
El conjunto de posibles resultados que se pueden obtener al lanzar un dado una vez está
dado por los elementos del conjunto A = 1, 2, 3, 4, 5, 6.
Consideremos que la secuencia de los resultados de este experimento la denotamos
mediante el vector X = (X1, X2, X3, X4, X5, X6).
➢ El primer elemento de la secuencia, X1, puede tomar su valor entre cualquiera de los 6
elementos de A.
➢ El segundo elemento de la secuencia, X2, puede tomar su valor entre cualquiera de los
5 elementos restantes de A.
…
➢ El último elemento de la secuencia, X6, puede tomar el elemento que resta de A,
después de haber seleccionado 5 elementos de este conjunto en los pasos anteriores:
El conjunto de posibles resultados que se pueden obtener al lanzar un dado una vez está
dado por los elementos del conjunto A = 1, 2, 3, 4, 5, 6.
Consideremos que la secuencia de los resultados de este experimento la denotamos
mediante el vector X = (X1, X2, X3, X4, X5, X6).
➢ El primer elemento de la secuencia, X1, puede tomar su valor entre cualquiera de los 6
elementos de A.
➢ El segundo elemento de la secuencia, X2, puede tomar su valor entre cualquiera de los
5 elementos restantes de A.
…
➢ El último elemento de la secuencia, X6, puede tomar el elemento que resta de A,
después de haber seleccionado 5 elementos de este conjunto en los pasos anteriores:
FactorialAndItsApproximation.m
Permutación sin Repetición: Definición
Sin repetición: Un evento o resultado no se puede repetir.
Ejemplo: En una baraja, una vez que usted obtiene un 2 de trébol, no puede
volver a obtener otro 2 de trébol. La razón es que en una baraja existe un único
2 de trébol.
Definición: Sea la secuencia X1, X2, …, Xn formada por n objetos distintos. Una
permutación de estos objetos es simplemente un reordenamiento o arreglo de
los mismos.
Teorema (Permutaciones sin Repetición): Sea la secuencia X1, X2, …, Xn formada
por n objetos distintos. Entonces existen n! permutaciones de esta secuencia de
objetos. La demostración se hará en clase.
Permutación sin Repetición: Ejemplos (1)
Ejemplo 4:
R:
(a) 20!
(b) 3!*5!*7!*8!
(c) 13!*8!
(d) 13*12*11*10*9*8*7*6*12!
Permutación sin Repetición: Ejemplos (3)
Ejemplo 5: ¿De cuántas maneras se pueden sentar tres personas alrededor de una
mesa circular?
R: 2! = 2.
Ejemplo 6: ¿De cuántas maneras se pueden sentar seis personas alrededor de una
mesa circular?
R: 5! = 120.
Ejemplo 8:
R: 64864800
Ejemplo 8:
Ejemplo 8:
Ejemplo 8:
Fuente: R.Johnsonbaugh, Matemáticas Discretas, Pearson Universitario, 6ta edición, 2005, ISBN 970-26-0637-3, pp. 245.
Generación de Permutaciones en Matlab
permn.p
Evaluación Empírica del Tiempo Promedio de
Ejecución del Programa “permn.m” (1)
ComplexityPermutationsPermn.m
Evaluación Empírica del Tiempo Promedio de
Ejecución del Programa “permn.m” (2)
➢ Note además que la función f1(n) (base y exponente variables) tiene un crecimiento mucho
más acelerado que la función f2(n) (base constante y exponente variable)
Evaluación Empírica del Tiempo Promedio de
Ejecución del Programa “permn.m” (3)
➢ Para valores de n grandes, el listar todas las permutaciones usando permn toma
un período de tiempo demasiado largo. Note que la razón de crecimiento de este
algoritmo es exponencial con base y exponente variables, O(nn), que es peor que la
razón de crecimiento exponencial con base 2, O(2n).
Evaluación Empírica del Tiempo Promedio de
Ejecución del Programa “perms.m” (1)
perms.m es la función creada por Matlab para encontrar todas las permutaciones de los n elementos de
un vector v.
Para consultar la ayuda de esta función escribir en la ventana de comandos de Matlab “help perms”, o a
su vez abrir el help de Matlab y escribir perms para tener más detalles de esta función.
Evaluación Empírica del Tiempo Promedio de
Ejecución del Programa “perms.m” (2)
Compare la gráfica de la función permn y perms. Note que para la función perms la escala del eje vertical
(tiempo) está en milisegundos; mientras que para la función permn la escala vertical está en segundos.
Fácilmente se puede notar que, para cada valor de n, la función perms tarda menos tiempo en ejecutarse
que la función permn. Sin embargo, la tasa de crecimiento del tiempo promedio de la función perms es la
misma que la tasa de crecimiento del tiempo promedio de la función permn. Recuerde que en el análisis
asintótico de una función se descartan las constantes!
Tenga Cuidado al Usar un Programa que Calcule las
Permutaciones de una Secuencia de n Elementos
Debido a que para los programas anteriores que calculan las permutaciones de una
secuencia de n elementos la complejidad aumenta abruptamente a medida que se
incrementa el valor de n (longitud de la secuencia), uno debe ser cuidadoso en el
valor de n que selecciona como entrada de dichos programas.
➢ ¿De cuántas maneras se pueden sentar a ocho personas en una mesa circular si
Alice y Bob deben sentarse juntos ?
R: 1440
➢ ¿De cuántas maneras se pueden sentar a ocho personas en una mesa circular si
Alice y Bob no deben sentarse juntos ?
R: 3600