Para comenzar tengo que crear una matriz con base en Listas dobles.
El problema es que cuando quiero llenar esta matriz se me cambian todos los valores de los demás espacios por el mismo que acabo de insertar,
Esto ya me había pasado antes y lo había solucionado creando una lista independiente para cada conjunto de valores, lo que pasa es que ahora no se de cuantas filas y columnas sera la matriz que debo crear.
Si alguien sabe alguna solución a este problema, se lo agradecería mucho, no necesito código, sino alguna pista para poder solucionarlo porque ya no se que hacer.
Bien pues aqui esta el cod.
Código PHP:
public class Principal {
//Crea Eje X Y y Contenido del Y
ListasDobleLL X = new ListasDobleLL();
ListasDobleL Y = new ListasDobleL();
ListasDoble XY = new ListasDoble();
ListasDobleL Vacia = new ListasDobleL();
public int Ejex,Ejey;
Principal()
{
}
//Crea Punteros de posicion Para cada eje
NodoListaDobleLL X_Actual;
NodoListaDobleL Y_Actual = Y.PrimerNodo;
NodoListaDoble XY_Actual = XY.PrimerNodo;
void MatriZero(int x, int y)
{ Vacia.InsInicio(XY);
for (int i = x ;i > 0;i--)
{
X.InsFinal(Vacia);
}
for (int i = y; i>0; i--)
{
Y.InsFinal(XY);
}
X_Actual = X.PrimerNodo;int P = 1;
while(P != x)
{
X.InsPosicionS(Y,P);
P++;
X_Actual = X_Actual.siguiente;
}
}
void InsMatriz(int dato, int x, int y)
{
ListasDobleL TempY = new ListasDobleL();
ListasDoble TempDato = new ListasDoble();
NodoListaDobleLL PosAX;
PosAX = X.PrimerNodo;
NodoListaDobleL PosAY ;
NodoListaDobleL PosAY2;
NodoListaDobleLL TempY2;
int contadorX=1;
int contadorY=1;
while(contadorX != x)
{
contadorX++;
PosAX = PosAX.siguiente;
}
TempY = PosAX.datos;
PosAY = TempY.PrimerNodo;
while(contadorY != y)
{
contadorY++;
PosAY = PosAY.siguiente;
}
TempDato = PosAY.datos;
TempDato.InsFinal(dato);
}
La idea es crear una matriz de x por y y luego comenzar a rellenarla con base en unas lecturas de archivo, en el método Matizero se crea la matriz cero, y con InsMatriz la relleno, el problema es que al rellenar me coloca el mismo valor en todas las filas y columnas.
De antemano Muchas Gracias