Optimización de una ED
Publicado por Jdrap (3 intervenciones) el 29/10/2008 21:52:47
Hola, tengo una duda acerca de como hacer más eficiente una estructura de datos.
La cosa es que quiero hacer una matriz 9x9 donde cada elemento sea a su vez, una lista de elementos posibles del 1 al 9 (vamos, para representar un sudoku...). Mi problema es que quiero hacerlo lo más eficiente posible, en cuestión de añadir elementos posibles o eliminarlos dentro de cada celda de elementos.
He pensado en utilizar una variable de tipo unsigned short (2B) para representar bit a bit la presencia o no de un elemento dentro de los elementos posibles (utilizaría los 9b menos significativos).
Para hacer set o unset de cada bit utilizaría una función a la que le paso el elemento que quiero modificar y en un switch según el elemento aplicar una máscara determinada en cada posición.
Mi pregunta es: ¿Penáis que esto sería mas eficiente que utilizar un array para representar cada celda de elementos posibles y mantener los elementos que quedan en el array?
Gracias, un saludo.
La cosa es que quiero hacer una matriz 9x9 donde cada elemento sea a su vez, una lista de elementos posibles del 1 al 9 (vamos, para representar un sudoku...). Mi problema es que quiero hacerlo lo más eficiente posible, en cuestión de añadir elementos posibles o eliminarlos dentro de cada celda de elementos.
He pensado en utilizar una variable de tipo unsigned short (2B) para representar bit a bit la presencia o no de un elemento dentro de los elementos posibles (utilizaría los 9b menos significativos).
Para hacer set o unset de cada bit utilizaría una función a la que le paso el elemento que quiero modificar y en un switch según el elemento aplicar una máscara determinada en cada posición.
Mi pregunta es: ¿Penáis que esto sería mas eficiente que utilizar un array para representar cada celda de elementos posibles y mantener los elementos que quedan en el array?
Gracias, un saludo.
Valora esta pregunta


0