Vectores

Páginas: 5 (1048 palabras) Publicado: 3 de junio de 2012
Arreglos
En programación, un arreglo o matriz es una zona de almacenamiento contiguo, que contiene una serie de elementos del mismo. Desde el punto de vista lógico una matriz se puede ver como un conjunto de elementos ordenados en fila. En principio, se puede considerar que todas las matrices son de una dimensión, la dimensión principal, pero los elementos de dicha fila pueden ser a su vezmatrices, lo que nos permite hablar de la existencia de matrices multidimensionales, aunque las más fáciles de imaginar son los de una, dos y tres dimensiones.
Estas estructuras de datos son adecuadas para situaciones en las que el acceso a los datos se realice de forma aleatoria e impredecible. Por el contrario, si los elementos pueden estar ordenados y se va a utilizar acceso secuencial sería másadecuado utilizar una lista, ya que esta estructura puede cambiar de tamaño fácilmente durante la ejecución de un programa.
Vectores dinámicos y estáticos
Lo habitual es que un vector tenga una cantidad fija de memoria asignada, aunque dependiendo del tipo de vector y del lenguaje de programación un vector podría tener una cantidad variable de datos. En este caso, se les denomina vectoresdinámicos, en oposición, a los vectores con una cantidad fija de memoria asignada se los denomina vectores estáticos.
El uso de vectores dinámicos requiere realizar una apropiada gestión de memoria dinámica. Un uso incorrecto de los vectores dinámicos, o mejor dicho, una mala gestión de la memoria dinámica, puede conducir a una fuga de memoria. Al utilizar vectores dinámicos siempre habrá que liberar lamemoria utilizada cuando ésta ya no se vaya a seguir utilizando.
Lenguajes más modernos y de más alto nivel, cuentan con un mecanismo denominado recolector de basura que permiten que el programa decida si debe liberar el espacio basándose en si se va a utilizar en el futuro o no un determinado objeto.
Arreglos unidimensionales
Un arreglo unidimensional es un tipo de datos estructurado que estáformado de una colección finita y ordenada de datos del mismo tipo. Es la estructura natural para modelar listas de elementos iguales.
El tipo de acceso a los arreglos unidimensionales es el acceso directo, es decir, podemos acceder a cualquier elemento del arreglo sin tener que consultar a elementos anteriores o posteriores, esto mediante el uso de un índice para cada elemento del arreglo quenos da su posición relativa.
Para implementar arreglos unidimensionales se debe reservar espacio en memoria, y se debe proporcionar la dirección base del arreglo, la cota superior y la inferior.

Representación en memoria
Los arreglos se representan en memoria de la forma siguiente:
                x : array[1..5] of integer

Para establecer el rango del arreglo (númerototal de elementos) que componen el arreglo se utiliza la siguiente fórmula:
                RANGO = Ls - (Li+1)

donde:
ls = Límite superior del arreglo
li = Límite inferior del arreglo
Para calcular la dirección de memoria de un elemento dentro de un arreglo se usa la siguiente fórmula:
                A[i] = base(A) + [(i-li) * w]
donde :
A =Identificador único del arreglo
i = Índice del elemento
li = Límite inferior
w = Número de bytes tipo componente
Si el arreglo en el cual estamos trabajando tiene un índice numerativo utilizaremos las siguientes fórmulas:
                RANGO = ord (ls) - (ord (li)+1)
                A[i] = base (A) + [ord (i) - ord (li) * w]

Arreglos multidimensionales
Losarreglos multidimensionales tienen más de una dimensión. En C#, las dimensiones se manejan por medio de un par de corchetes, dentro de los que se escriben los valores de cada dimensión, separados por comas.
Declaración.
La sintaxis para declarar un arreglo multidimensional es la siguiente:
<tipo> [ , ...] < identificador > ;
Donde:
tipo indica el tipo correspondiente a los...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • Vectores
  • Vectores
  • Vectores
  • Vectores
  • Vector
  • Vector
  • Vector
  • Vectores

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS