¿Cómo dividir una lista para obtener el conjunto potencia de sus elementos?
Frecuentes
Visto 94 equipos
2
Tengo una lista y quiero dividirla en sublistas con +/- 1 elementos.
Ejemplo
Tengo una lista con 17 artículos en ella. Lo que quiero es dividirlo en 4 sublistas como estas
1.List = 5 elements
2.List = 4 elements
3.List = 4 elements
4.List = 4 elements
¿Cómo puedo hacer eso? ¿Qué algoritmo debo usar aquí?
2 Respuestas
2
Use la división de enteros para obtener los artículos en cada grupo y luego use la división modular para obtener el número de los primeros n grupos que tendrán +1 artículo. Por ejemplo: 17 elementos en 4 grupos:
17 / 4 = 4
- Entonces habrá 4 grupos con 4 elementos.17 % 4 = 1
- Entonces, los primeros 1 grupos tendrán 1 elemento adicional.
Otro ejemplo:
18 / 4 = 4
- Entonces habrá 4 grupos con 4 elementos.18 % 4 = 2
- Entonces, los primeros 2 grupos tendrán 1 elemento adicional.
Respondido el 12 de junio de 12 a las 09:06
1
Lo que quieres es el Set de poder de su lista original. El enfoque más genérico para recuperar el conjunto potencia y las propiedades respectivas se dan en el Página de Power Set en Wikipedia
Respondido el 12 de junio de 12 a las 09:06
No es la respuesta que estás buscando? Examinar otras preguntas etiquetadas algorithm partitioning powerset or haz tu propia pregunta.
Muchas gracias por la ayuda. - Pellizcos