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

Matriz dinámica

Estas en el tema de Matriz dinámica en el foro de Java en Foros del Web. ¿Cómo puedo añadir un elemento a una matriz? es decir, creo la matriz sin especificar un tamaño y le voy añadiendo elementos. Gracias y un ...
  #1 (permalink)  
Antiguo 11/01/2006, 11:38
 
Fecha de Ingreso: enero-2002
Ubicación: Graná
Mensajes: 646
Antigüedad: 22 años, 4 meses
Puntos: 0
Matriz dinámica

¿Cómo puedo añadir un elemento a una matriz? es decir, creo la matriz sin especificar un tamaño y le voy añadiendo elementos. Gracias y un saludo
  #2 (permalink)  
Antiguo 11/01/2006, 11:49
Avatar de Tipdar  
Fecha de Ingreso: octubre-2005
Ubicación: Aquí y allá.
Mensajes: 323
Antigüedad: 18 años, 6 meses
Puntos: 7
Aviana, las matrices son arreglos de dos dimensiones y en algún momento vas a tener que especificarle tamaño. Se me ocurre, si no sabes que tamaño podría tomar tu matriz, que crees una lista de listas.

No te pongo código por lo que pasó la otra vez y ya sabes que sería recursivo.

Espero que pueda ayudar.
__________________
El último TipdaR
  #3 (permalink)  
Antiguo 11/01/2006, 11:52
 
Fecha de Ingreso: enero-2002
Ubicación: Graná
Mensajes: 646
Antigüedad: 22 años, 4 meses
Puntos: 0
Qué pasó la otra vez? :?
Lo que pretendo es algo así:

BufferedReader lectura;
String linea;
String [][]monedas;
int num_monedas=0;

File f=new File("cambio.txt");
if (f.exists()){
lectura =new BufferedReader(new FileReader(f));
while ((linea=lectura.readLine())!=null){
monedas[num_monedas]=linea.split("-");
num_monedas++;
}
}
  #4 (permalink)  
Antiguo 11/01/2006, 16:55
Avatar de stock  
Fecha de Ingreso: junio-2004
Ubicación: Monterrey NL
Mensajes: 2.390
Antigüedad: 19 años, 10 meses
Puntos: 53
mira aviana, en java cuando declaras un arreglo necesitas forsozamente especificarle el tamaño de este, apra que se reserve el espacio en memoria, osea que los arreglos no pueden ser dinamicos.........

para solucionar esto necesitas usar una estructura de datos, en este caso las listas son las indicadas!!

si quieres mas informacion de las listas, revisa las FAQs de este foro que ahi puse un post con una explicacion conceptual de como funcionan las listas, ademas de que puse un ejemplo hecho en JAVA.....

si bien no quisieras usar el codigo que hice, JAVA te ofrece tambien algo que se llama LIST que presizamente son listas, puedes usar las "hijas" de esta interface que son ArrayList, etc....

bueno, espero sea de ayuda!!

alguna otra duda pues postea!!

bye bye
  #5 (permalink)  
Antiguo 06/03/2011, 08:51
 
Fecha de Ingreso: marzo-2010
Mensajes: 9
Antigüedad: 14 años, 1 mes
Puntos: 0
Respuesta: Matriz dinámica

Hola que tal?, fijense ke yo necesito este algoritmo, de matriz esparcida(tambien tiene otros nombres como matris ortogonal, matiz dispersa entre otros) tengo uno la verdad pero no le entiendo este que tengo esta en java, si pudieran ayudarme se los agradeceria mucho :), saludos
  #6 (permalink)  
Antiguo 06/03/2011, 14:24
 
Fecha de Ingreso: marzo-2011
Ubicación: monteria-colombia
Mensajes: 14
Antigüedad: 13 años, 2 meses
Puntos: 0
Respuesta: Matriz dinámica

A que te refieres con dinamismo, a que el numero de columnas sea variable... por que desde ese punto de vista si es posible, aunque debes especificar de antemano el numero de filas a utilizar...

Con lo que te digo tendrias una estructura como la siguiente...
Código:
|33|72|21|56|45|60|62|29|26|
|36|97|15|
|39|46|89|45|17|5|
por otro lado podrias ser un poco mas especifica con lo que necesitas
  #7 (permalink)  
Antiguo 07/03/2011, 11:15
 
Fecha de Ingreso: noviembre-2008
Mensajes: 59
Antigüedad: 15 años, 5 meses
Puntos: 1
Respuesta: Matriz dinámica

Con vectores:

Código:
//Clase Mi_Vector:
//Inicializamos un Vector de Integer
Vector <Integer> vector = new Vector <Integer>();


//Programa principal
//Inicializamos la matriz que estará compuesta por Vectores
Vector <Mi_Vector> matriz = new Vector<Mi_Vector>();
//Ahora podemos incrementar la matriz como queramos, por ejemplo:
matriz.add(new Mi_Vector); //Añade una columna
matriz.get(0).add(new Integer(99)); //Añade un elemento
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 04:22.