Foros del Web » Programación para mayores de 30 ;) » Java »

Porblemas con expansion dinamica de un vector bidimensional

Estas en el tema de Porblemas con expansion dinamica de un vector bidimensional en el foro de Java en Foros del Web. Tengo problemas para expandir dinamicamente un arreglo bidimensional. Para un arreglo unidimensional lo hago de la siguiente manera: public int[] AjustVector(int[] arr){ int[] orig = ...
  #1 (permalink)  
Antiguo 13/03/2007, 11:56
 
Fecha de Ingreso: enero-2005
Mensajes: 260
Antigüedad: 19 años, 4 meses
Puntos: 0
Porblemas con expansion dinamica de un vector bidimensional

Tengo problemas para expandir dinamicamente un arreglo bidimensional. Para un arreglo unidimensional lo hago de la siguiente manera:
public int[] AjustVector(int[] arr){
int[] orig = arr;
arr = new int[orig.length +1];
for (int i=0; i<orig.length; i++){
arr[i]=orig[i];
}
return arr;
}


Pero bidimensional???????
Por favor ayudenme con esto......

Última edición por yasahe; 14/03/2007 a las 07:56
  #2 (permalink)  
Antiguo 14/03/2007, 02:14
Avatar de elAntonie  
Fecha de Ingreso: febrero-2007
Mensajes: 894
Antigüedad: 17 años, 3 meses
Puntos: 10
Re: Porblemas con expansion dinamica de un vector bidimensional

Wenas.

Eso no es un vector, es un array. Cuando te refieres a un vector en un foro de java, te estas refiriendo a la clase java.util.Vector que no tiene nada que ver con tu codigo.

Dicho esto, tu problema se soluciona con dos for anidados.
filas = filas de orig
columnas = columnas de orig

for (int i=0;i<filas;i++)
for (int j=0;j<columnas;j++)
{
arr[i][j] = bla ble blu....

Un saludo.
  #3 (permalink)  
Antiguo 14/03/2007, 08:06
 
Fecha de Ingreso: enero-2005
Mensajes: 260
Antigüedad: 19 años, 4 meses
Puntos: 0
Re: Porblemas con expansion dinamica de un vector bidimensional

Si, es cierto, son arreglos bidimensionales, pero lo que quiero es expandir dinamicamente, es ddecir, en cierto momento expandir el numero de columnas o el numero de filas. Tengo implemntado estas dos funciones y no me pinchan.... q puede ser???
public int[][] AjustFilas(int[][] arr){
int[][] orig = arr;
arr = new int[orig.length +1][];
for (int i=0; i<orig.length; i++){
int k = orig[i].length;
arr[i]=new int[k];
for (int j=0; j<k; j++){
arr[i][j]=orig[i][j];
}
}
return arr;
}

public int[][] AjustColumnas(int[][] arr){
int[][] orig = arr;
int col = orig[orig.length -1].length +1;//adiciono 1 a la cantidad de columnas que tiene la ultima fila
arr[orig.length-1] = new int[col];
for (int i=0; i<orig.length; i++){
for (int j=0; j<orig[i].length; j++){
arr[i][j]=orig[i][j];
}
}
return arr;
}
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 21:44.