computacion avanzada
Un arreglo es un conjunto de datos o una estructura de datos homogéneos que se encuentran ubicados en forma consecutiva en la memoria RAM (sirve para almacenar datos en forma temporal). También puede decirse que un arreglo no es más que un grupo o una colección finita, homogénea y ordenada de elementos.
Está formado por un número fijo de elementos contiguos de un mismotipo. Al tipo se le llama tipo base del arreglo. Los datos individuales se llaman elementos del arreglo.
Un array se caracteriza por:
Almacenar los elementos del array en posiciones de memoria continua.
Tener un único nombre de variable que representa a todos los elementos, y éstos a su vez se diferencian por un índice o subíndice.
Acceso directo o aleatorio a los elementos individuales delarray.
Ejemplo:
Se ha hecho una elección en la que participaron 8 candidatos. Cada candidato se identifica por un número entre 0 y 7. El resultado de la elección se encuentra en un archivo ``votos.txt'' que contiene una línea por cada sufragante. Esta línea indica el número del candidato que prefiere ese sufragante.
3
7
1
3
1
En el archivo se observa que el candidato número 3 tiene 2 votos, aligual que el número 1 y que el candidato 7 tiene 1 voto.
TextReader lect= new TextReader("votos.txt");
Array tab= new Array(8); // Crea un arreglo asociativo
// Crear las filas del arreglo asociativo
// El valor inicial asociado a cada candidato es 0
int cand= 0;
while (cand<=7) {
tab.put(cand, 0); // Asocia 0 al candidato cand
cand= cand+1;
}
// Leer los votos
while(true) {int candVoto= lect.readInt();
if (lect.eofReached())
break;
// Obtenemos el numero de votos del candidato
int anterior= tab.getInt(candVoto);
int nuevo= anterior+1;
tab.put(candVoto, nuevo); // Cambiar el valor asociado
}
cand= 0;
while (cand<=7) {
println("Candidato "+cand+": "+tab.getInt(cand));
cand= cand+1;
}
lect.close();
Almacenamiento dearreglos en memoria:
El almacenamiento en la computadora está dispuesto fundamentalmente en secuencia contigua, de modo que cada acceso a una matriz o tabla la máquina debe realizar la tarea de convertir la posición dentro del array en una posición perteneciente a una línea.
El almacenamiento de un vector en memoria se realiza en celdas o posiciones secuenciales. Así, en el caso de un vector A conun subíndice de rango 1 a n.
Si cada elemento del array ocupa S bytes (1 byte = 8 bits) y B es la dirección inicial de la memoria central de la computadora, posición o dirección base, la dirección inicial del elemento i-ésimo sería:
B + (I – 1) * S
2) Arreglos de Caracteres:
Arreglos unidimensionales:
Es un tipo de datos estructurado que está formado de una colección finita y ordenada dedatos del mismo tipo. Es la estructura natural para modelar listas de elementos iguales. Están formados por un conjunto de elementos de un mismo tipo de datos que se almacenan bajo un mismo nombre, y se diferencian por la posición que tiene cada elemento dentro del arreglo de datos. Al declarar un arreglo, se debe inicializar sus elementos antes de utilizarlos. Para declarar un arreglo tiene queindicar su tipo, un nombre único y la cantidad de elementos que va a contener.
Arreglos bidimensionales:
Los arreglos bidimensionales son tablas de valores. Cada elemento de un arreglo bidimensional está simultáneamente en una fila y en una columna. En matemáticas, a los arreglos bidimensionales se les llama matrices, y son muy utilizados en problemas de Ingeniería. En un arreglo bidimensional,cada elemento tiene una posición que se identifica mediante dos índices: el de su fila y el de su columna.
Arreglos con múltiple subíndices
Es la representación de tablas de valores, consistiendo de información arreglada en renglones y columnas. Para identificar un elemento particular de la tabla, es necesario especificar dos subíndices; el primero identifica el renglón del elemento y el segundo...
Regístrate para leer el documento completo.