Escuela de Programación Tca
Por ejemplo:
Nodo P1->ID[0]=2 es igual a 3 14.
El nodo p2->ID[0]=2 es 14 15.
El nodo P3->ID[0]=2 es 15 22.
Se puede describir en la siguiente tabla.
14 15
P1 1
P2 1
P3 1
Nota: P- gt; ID[0] es 2 n veces, entonces debe ser un número como 2, 4, 8, 16, 32,......
Nota: 14 15 se refiere a números. Aquí, P2, P1 y p3 pueden "cubrir" 14 15.
Pero es obvio que P2 por sí solo puede "cubrir" los dos números objetivo 14 y 15.
Así que nuestro algoritmo es encontrar un único P_ o uno que pueda satisfacer la "cobertura". rate" ¡La combinación con la menor cantidad de artículos!
Además, cada columna de la tabla tendrá dos o más unos, porque, usando el método Q-M para simplificar, ¡los pasos anteriores han filtrado una columna de unos!
Otro ejemplo es:
ID del nodo P1[0]=2 es 13 14.
ID del nodo P2[0]=4 es 14 15 22 24.
ID del nodo P3[0]=2 es 14 16.
ID del nodo P4[0]=2 es 13 16.
13 14 15 16
P1 1 1
P2 1
P3 1
P4 1 p>
p>
P1 y P3; P2 y P4
son los resultados del algoritmo que satisfacen las condiciones.
- -
De hecho, lo anterior es el último paso del método Q-M para simplificar funciones lógicas. La longitud de la lista vinculada PN generada por el algoritmo anterior es incierta (es decir, P1, P2, P3, .... son diferentes para diferentes funciones lógicas cada vez).
El número de términos como 13 14 15 16 también es incierto (es decir, el número específico de términos será diferente para diferentes funciones lógicas cada vez).
Mi algoritmo, mientras lo escribo aquí, no puedo encontrar una manera adecuada y hábil de resolver este problema. Espero puedan cooperar y darme algunos comentarios, ideas o pseudocódigo. Estoy aprendiendo C y el pseudocódigo tipo C es mejor. ¡Gracias a todos! !