6.3.9 con n = 7 después de la combinación r dada.
1. 1356
2. 12367
3. 14567
En los ejercicios 4 al 6, encuentre la permutación que generará el algoritmo
6.3.14 después de la permutación dada.
4. 12354
5. 625431
6. 12876543
7. Para cada cadena en los ejercicios 1 al 3, explique (como en el
ejemplo 6.3.10) exactamente la forma en que el algoritmo 6.3.9
genera la siguiente combinación r.
ejemplo 6.3.15) exactamente la forma en que el algoritmo 6.3.14
genera la siguiente permutación.
9. Muestre la salida del algoritmo 6.3.9 cuando n = 6 y r = 3.
10. Muestre la salida del algoritmo 6.3.9 cuando n = 6 y r = 2.
11. Muestre la salida del algoritmo 6.3.9 cuando n = 7 y r = 5.
12. Muestre la salida del algoritmo 6.3.14 cuando n = 2.
13. Muestre la salida del algoritmo 6.3.14 cuando n = 3.
14. Modifique el algoritmo 6.3.9 de manera que la línea 5
5. for i = 2 to C(n, r) {se elimine. Base la condición de terminación en el hecho de que la
última combinación r tiene todos los elementos si iguales a su valor
máximo.
15. Modifique el algoritmo 6.3.14 de manera que la línea 5
5. for i = 2 to n! {se elimine. Base la condición de terminación en el hecho de que la
última permutación tiene los elementos si en orden decreciente.
conjunto de n elementos.
17. Escriba un algoritmo cuya entrada es una combinación r de {1, 2,
. . . , n}. La salida es la siguiente combinación r (en orden lexicográfico).
La primera combinación r sigue a la última combinación r.
18. Escriba un algoritmo cuya entrada es una permutación de {1, 2,
. . . , n}. La salida es la siguiente permutación (en orden lexicográfico).
La primera permutación sigue a la última permutación.
19. Escriba una algoritmo cuya entrada es una combinación r {1, 2,
. . . , n}. La salida es la combinación r anterior (en orden lexicográfico).
La última combinación r precede a la primera combinación
r.
20. Escriba un algoritmo cuya entrada es una permutación de {1, 2,
. . . , n}. La salida es la permutación anterior (en orden lexicográfico).
La última permutación precede a la primera.
21. Escriba un algoritmo recursivo que genere todas las combinaciones
r del conjunto {s1, s2, . . . , sn}. Divida el problema en dos subproblemas:
■ Elabore una lista de las combinaciones r que contienen a s1.
■ Elabore una lista de las combinaciones r que no contienen a s1.
22. Escriba un algoritmo recursivo que genere todas las permutaciones
del conjunto {s1, s2, . . . , sn}. Divida el problema en n subproblemas:
■ Elabore una lista de las permutaciones que comienzan con s1.
■ Elabore una lista de las permutaciones que comienzan con s2.
···
■ Elabore una lista de las permutaciones que comienzan con sn.