Web - Amazon

We provide Linux to the World


We support WINRAR [What is this] - [Download .exe file(s) for Windows]

CLASSICISTRANIERI HOME PAGE - YOUTUBE CHANNEL
SITEMAP
Audiobooks by Valerio Di Stefano: Single Download - Complete Download [TAR] [WIM] [ZIP] [RAR] - Alphabetical Download  [TAR] [WIM] [ZIP] [RAR] - Download Instructions

Make a donation: IBAN: IT36M0708677020000000008016 - BIC/SWIFT:  ICRAITRRU60 - VALERIO DI STEFANO or
Privacy Policy Cookie Policy Terms and Conditions
Vector (programación) - Wikipedia, la enciclopedia libre

Vector (programación)

De Wikipedia, la enciclopedia libre

En programación, un vector, array, arreglo o alineación es un conjunto o agrupación de variables del mismo tipo cuyo acceso se realiza por índices. Los vectores o arrays de dos o más dimensiones se denominan matrices, que pueden tener tantas dimensiones como se desee; aunque lo correcto es llamarlo arreglo(de memoria) ya que una variable de más de dos dimensiones, no cumple con las características matemáticas de una matriz numérica.

Tabla de contenidos

[editar] Índices

Para acceder al valor de una posición determinada dentro del vector, es común utilizar el índice que, generalmente, es numérico, empezando desde cero hasta el número de elementos - 1; esto es, en el caso de un vector de 5 elementos el primer elemento sería el de índice 0, mientras que el último tendría como índice el 4. En algunos ámbitos matemáticos se comienza a numerar los vectores desde el 1 en lugar de desde el 0.

Lenguajes como Python llevan al extremo las utilización de índices y permiten el uso de números negativos para referenciar el vector desde el final hacia la posición inicial. Por ejemplo, el índice -1 corresponde al último elemento y el -2 corresponde al penúltimo.

[editar] Notación

La representación de un elemento en un vector se suele hacer mediante el identificador del vector seguido del índice entre corchetes, paréntesis o llaves:

Notación Ejemplos
vector[índice] (C, C++, Java, etc.)
vector(índice) (Basic)
vector{índice}



Aunque muchas veces en pseudocódigos y en libros de matemática se representan como letras acompañadas de un subíndice numérico que indica la posición a la que se quiere acceder. Por ejemplo: a0,a1,a2,...

[editar] Forma de Acceso

La forma de acceder a los elementos del array es directa, al contrario de las listas. Esto significa que el elemento deseado es obtenido a partir de su índice y no hay que ir buscándolo elemento por elemento. En el caso de una lista, por ejemplo, para llegar al tercer elemento hay que acceder a los dos anteriores o almacenar un apuntador o puntero que permita acceder de manera rápida a ese elemento.

Para trabajar con vectores muchas veces es preciso recorrerlos. Esto se realiza por medio de ciclos de repetición. El algoritmo clásico para recorrer un vector se refleja en el siguiente pseudocódigo:

i = 0
mientras (i < longitud)
    #Se realiza alguna operación con el vector en la i-ésima posición
    f(v[i])
    i=i+1
fin_mientras

[editar] Vectores dinámicos

Dependiendo del tipo de vector y del lenguaje de programación que se utilice, este vector puede tener una cantidad fija o variable de datos. En el segundo caso, se los denomina vectores dinámicos. Los vectores dinámicos sacan su espacio del denominado heap del programa. Un uso incorrecto de los vectores dinámicos puede conducir a una fuga de memoria, por eso, se aconseja siempre en estos lenguajes liberar la memoria utilizada.

Lenguajes más modernos y de más alto nivel, cuentan con un mecanismo denominado recolector de basura (como es el caso de Java) 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.

Ejemplos:

  • Declaración en C++ de un vector estático:
int v[5];
for (int i=0; i<5; i++)
{
  v[i]=2*i;
}
El resultado de los dos ejemplos es el mismo vector:
0 1 2 3 4
0 2 4 6 8


  • Declaración en C++ de un ( vector de la STL o vector dinámico):
vector<int> v;
for (int i=0; i<5; i++)
{
  v.push_back(2*i);
}

En el caso del lenguaje C, la forma de crear vectores estáticos es igual que en c++, pero para vectores dinámicos se utilizan la instrucciones malloc y realloc, acompañadas por free (para liberar la memoria utilizada).

En lenguajes compilados y en la mayoría de máquinas virtuales, la representación de matrices suele ser en una dimensión, es decir: un conjunto consecutivo de celdas de memoria (como si fueran un gran vector). El compilador (o traductor a byte-code) realizará las conversiones pertinentes para transformar un acceso a una matriz en un acceso a un vector.

[editar] Véase también

Our "Network":

Project Gutenberg
https://gutenberg.classicistranieri.com

Encyclopaedia Britannica 1911
https://encyclopaediabritannica.classicistranieri.com

Librivox Audiobooks
https://librivox.classicistranieri.com

Linux Distributions
https://old.classicistranieri.com

Magnatune (MP3 Music)
https://magnatune.classicistranieri.com

Static Wikipedia (June 2008)
https://wikipedia.classicistranieri.com

Static Wikipedia (March 2008)
https://wikipedia2007.classicistranieri.com/mar2008/

Static Wikipedia (2007)
https://wikipedia2007.classicistranieri.com

Static Wikipedia (2006)
https://wikipedia2006.classicistranieri.com

Liber Liber
https://liberliber.classicistranieri.com

ZIM Files for Kiwix
https://zim.classicistranieri.com


Other Websites:

Bach - Goldberg Variations
https://www.goldbergvariations.org

Lazarillo de Tormes
https://www.lazarillodetormes.org

Madame Bovary
https://www.madamebovary.org

Il Fu Mattia Pascal
https://www.mattiapascal.it

The Voice in the Desert
https://www.thevoiceinthedesert.org

Confessione d'un amore fascista
https://www.amorefascista.it

Malinverno
https://www.malinverno.org

Debito formativo
https://www.debitoformativo.it

Adina Spire
https://www.adinaspire.com