Título: Ejercicio: las posibles combinaciones de una lista [python] Publicado por: Ragnarok en 3 Septiembre 2009, 15:46 pm Tengo que hacer todas las posibles combinaciones de una lista (cuidado, he dicho combinaciones, no permutaciones), esto significa las combinaciones tomadas de uno en uno de todos los elementos de la lista (es decir, sus elementos), de dos en dos, y así hasta las combinaciones de n en n elementos siendo n la longitud de la lista, es decir, sólo habrá una combinación de ese tamaño.
Lo estoy programando en python, así que si no me distraen mucho pondré la solución en ese lenguaje dentro de poco, pero puede ser un ejercicio interesante también para otros lenguajes. Título: Re: Ejercicio: las posibles combinaciones de una lista [python] Publicado por: do-while en 4 Septiembre 2009, 13:47 pm Hola,
Me he puesto a trabajar en el problema. Al no saber cuantos elementos tiene la lista, yo lo haria de forma recursiva. Un cosilla, ¿en las combinaciones el orden importaba o no? Título: Re: Ejercicio: las posibles combinaciones de una lista [python] Publicado por: ghastlyX en 4 Septiembre 2009, 17:58 pm Supongo que os referís a mostrar los subconjuntos de k elementos dada una lista de n elementos. He hecho un código en C++ que hace eso:
Código
Un saludo de ghastlyX ;) Título: Re: Ejercicio: las posibles combinaciones de una lista [python] Publicado por: Ragnarok en 6 Septiembre 2009, 02:35 am Bueno, el problema que quería resolver era más complicado, porque además quería generarlos de uno en uno sin guardar los resultados parciales, cosa que ya he hecho, pero como es una restricción que no había contemplado y el código queda un poco más complicado he decidido hacer también la versión normal, es decir, almacenando resultados parciales hasta que se devuelven todos.
Código
PD: do-while en las combnaciones no importa el orden, importa en las variaciones. ghastlyX sí, también lo puedes ver como la unión de las particiones de un conjunto. PD2: no se me había ocurrido hacerlo recursivo, no queda del todo mal: Código
Título: Re: Ejercicio: las posibles combinaciones de una lista [python] Publicado por: do-while en 9 Septiembre 2009, 18:52 pm Aqui esta mi solucion. :)
Hay soluciones para hartarse... ;D Código
Título: Re: Ejercicio: las posibles combinaciones de una lista [python] Publicado por: do-while en 9 Septiembre 2009, 22:16 pm En el siguuieinte post hay un enlace con codigo en C sobre este tema.
http://foro.elhacker.net/programacion_cc/combinatoria_code-t266973.0.html Espero que sirva de algo. :) Hasta pronto!!! |