Está en la página 1de 7

NOMBRE: KEVIN BRAYAN RAMIREZ LOPEZ

MATERIA: ESTRUCTURA DE DATOS

GRADO: 3 CUATRIMESTRE

FECHA: JUEVES 30 DE JUNIO DEL 2022

MAESTRO:CARLOS ERICK TRUJILLO MANDUJANO

TAREA: INVESTIGACION
QUE SON LOS VECTORES
En programación, se le denomina vector, formación, matriz (en inglés array, del cual surge la mala
traducción arreglo ), a una zona de almacenamiento contiguo que contiene una serie de elementos
del mismo tipo, los elementos de la matriz.
Desde el punto de vista lógico una matriz se puede ver como un conjunto de elementos ordenados
en fila (o filas y columnas si tuvieran dos dimensiones).
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 vez matrices (un proceso que puede ser
recursivo ), lo que nos permite hablar de la existencia de matrices multidimensionales, aunque las
más fáciles de imaginar son las de una, dos y tres dimensiones.
Estas estructuras de datos son adecuadas para situaciones en las que el acceso a los datos se
realiza de forma aleatoria e impredecible.
Por el contrario, si los elementos pueden estar ordenados y se va a utilizar un acceso secuencial
sería más adecuado durante utilizar una lista , ya que esta estructura puede cambiar de tamaño
fácilmente la ejecución de un programa, siendo esta última una estructura dinámica (al no tener un
tamaño definido).

INDICE
Todo vector se compone de un determinado número de elementos, lo cual lo hace que sea una
estructura estática.
Cada elemento es referenciado por la posición que ocupa dentro del vector.
Dichas posiciones son llamadas índice y siempre son correlativos.
Existen tres formas de indexar los elementos de una matriz:

 Base-cero (0): en este modo el primer elemento del vector será el componente cero ('0') del
mismo, es decir, tendrá el índice '0'.
En consecuencia, si el vector tiene 'n' componentes, el último elemento tendrá como índice el valor
'n-1'.
El lenguaje C y el lenguaje Java son un ejemplo típico que utiliza este modo de indexación, ya que
en aritmética de punteros el valor 0 corresponde a un desplazamiento nulo del puntero.
De este modo, al sumar el valor del puntero y del desplazamiento 0 se consigue apuntar al primer
elemento del vector.
 Base-uno (1): en esta forma de indexación, el primer elemento de la matriz tiene el índice '1' y el
último tiene el índice 'n' (para una matriz de 'n' componentes).
Lua es un ejemplo de lenguaje que usa este tipo de indexación.
 Base-n (n) : este es un modo versátil de indexación en la que el índice del primer elemento puede
ser elegido libremente, en algunos lenguajes de programación se permite que los índices puedan
ser negativos e incluso de cualquier tipo escalar (también cadenas de caracteres).
NOTACION
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:

notacion ejemplos
Vector[índice_1, índice_2…, índice_N] Lua, Perl, ect.
Vector[índice_0][índice_2]…[índice_N-1] C,C++, PHP, Java,
ect.
Vector(índice_1, índice_2…, índice_N) Básico, MATLAB

Aunque muchas veces en pseudocódigo 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, para un vector " A ":

A0 , A 1 , A 2 , .. . (vector unidimensional)

FORMA DE ACCESO
La forma de acceder a los elementos de la matriz es directa ; esto significa que el elemento deseado
se obtiene a partir de su índice y no hay que ir buscándolo elemento por elemento (en
contraposición, en el caso de una lista, para llegar, por ejemplo, al tercer elemento hay que acceder
a los dos anteriores o almacenes 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 bucles.
La siguiente fuente escrita en el lenguaje C muestra un algoritmo típico para recorrer un vector ' ' y
aplicar una función ' ' a cada uno de los componentes del vector: V f (…)

int yo = 0 ;
longitud int = 99 ; // longitud del vector Ej. 99 int V [ longitud ];

while ( i < longitud ) //Ej. con mientras {

//Se realiza alguna operación con el vector en la i-ésima posición


f ( V [ i ] );

//Se aumenta el índice para la siguiente etapa


i = i + 1 ; // También podría escribirse como i++; i+= 1; }

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 variable de datos.
En este caso, se les denominan vectores dinámicos , en oposición, a los vectores con una cantidad
fija de memoria apoyada se los denominan vectores estáticos.

El uso de vectores dinámicos requiere realizar una gestión apropiada 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 la memoria utilizada cuando este 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 (como es el caso de Java) que permiten que el programa decida si debe liberar el espacio
extendido en si se va a utilizar en el futuro o no un determinado objeto.

EJEMPLOS EN C
 Declaración en C / C++ de un vector estático.
int principal ( vacío )
{
int i , v [ 5 ]; // v[5] es un vector de 5 componentes (Indexación
base-cero)

para ( yo = 0 ; yo < 5 ; yo ++ )
{
v [ yo ] = 0 ; // Asignamos un valor printf ( "%d \n " , v
[ i ]);
imprimirf ( " \n " ); // Crea una nueva linea
}
devolver 0 ;
}

 Declaración en C / C++ de un vector estático utilizando aritmética de punteros.


Siendo el identificador del vector, un puntero constante que contiene la dirección del comienzo del
vector (vector[0], primer elemento)

int principal ( vacío )


{
int i , v [ 5 ]; // v[5] es un vector de 5 componentes (Indexación
base-cero)

para ( yo = 0 ; yo < 5 ; yo ++ )
{
* ( v + yo ) = 0 ; // Asignamos un valor en la dirección (vector +
((índice * sizeof (int) cantidad de bytes de desplazamiento desde la
base.) printf ( "%d \n " , * ( v + i ));

imprimirf ( " \n " ); // Crea una nueva linea }

devolver 0 ;
}

 Declaración en C++ de un vector de STL:

# incluir <vector>

vector < int > v; // Si no se especifica el tamaño inicial es 0

para ( int i = 0 ; i < 5 ; i ++ )


{
v . retroceder ( 2 * i ); // inserta un elemento al final del vector }
El ejemplo anterior está hecho para el lenguaje C++.
En C, para crear vectores dinámicos se tendrá que utilizar las instrucciones malloc y realloc para
reservar memoria de forma dinámica (ver biblioteca stdlib.h ), y la función free para liberar la
memoria utilizada.

Resultado:
0 1 2 3 4
0 2 4 6 8

El resultado de los dos ejemplos es el mismo vector.

VECTORES MULTIDIMENSIONALES
En Básico, Java y otros lenguajes es posible declarar matrices multidimensionales, entendiéndolas
como un vector de x dimensión.
En dichos casos, el número de elementos del vector es el producto resultante de cada dimensión.

Por ejemplo el vector v(4,1) tiene 10 elementos se calcula del siguiente modo: (0-4) * (0-1). Los
elementos de la primera dimensión del vector contiene 5 elementos que van del '0' al '4' y la 2º
dimensión tiene 2 elementos que van del '0' al '1'.
Los elementos serían accedidos del siguiente modo:

elemento 1: (0,0)
elemento 2: (0,1)
elemento 3: (1,0)
...
elemento 8: (3,1)
elemento 9: (4,0)
elemento 10: (4,1)

QUE SON UNA MATRICES

Un arreglo (matriz) es una colección ordenada de datos (tanto primitivos u objetos dependiendo del
lenguaje).
Los arreglos (matrices) se emplean para almacenar multiples valores en una sola variable, frente a
las variables que sólo pueden almacenar un valor (por cada variable).

¿QUÉ ES UNA MATRIZ Y UN EJEMPLO?


Una matriz es un arreglo de números ordenado, que consiste en una serie de filas y columnas, de
modo que cada elemento ocupa una posición y puede ser identificado por su número de fila y de
columna.
Dadas dos matrices podremos realizar ciertas operaciones entre ellas siempre que cumplan
determinadas condiciones.
¿Qué son matrices y tipos de matrices? DEFINICIÓN DE MATRIZ
Se puede definir una matriz, como un conjunto de elementos (números) ordenados en filas y
columnas.
Para designar una matriz se emplean letras mayúsculas.
Cada uno de los elementos de la matriz (aij) tiene dos subíndices.
El primero i indica la fila a la que pertenece y el segundo j la columna.

¿QUÉ ES UNA MATRIZ Y CUÁLES SON SUS ELEMENTOS?


Una matriz se representa por medio de una letra mayúscula (A,B, …) y sus elementos con la misma
letra en minúscula (a,b, …), con un doble subíndice donde el primero indica la fila y el segundo la
columna a la que pertenece.
¿Cuáles son los tipos de matrices en programación?
Tipos de matrices

 Matriz fila.
 Matriz columna.
 Matriz rectangular.
 Matriz traspuesta.
 Matriz nula.
 Matriz cuadrada.
 Tipos de matrices cuadradas.

¿CUÁLES SON LOS TIPOS DE MATRICES?


Existen diversos tipos y clasificaciones de matrices:

 Matriz cuadrada. Se dice que una matriz A es cuadrada si tiene el mismo número de filas que de
columnas.
 Matriz rectangular.
 Matriz de lado lineal o vertical.
 Matriz columna.
 Matriz horizontal.
 Matriz fila.
 Matriz diagonal.
 Matriz escalar.

¿Cómo identificar una matriz? Una matriz fila está constituida por una sola fila.
La matriz rectangular tiene distinto número de filas que de columnas, siendo su dimensión mxn. La
matriz cuadrada tiene el mismo número de filas que de columnas.
Los elementos de la forma aii constituyen la diagonal principal.

¿DÓNDE SE APLICA LA MATRIZ EN LA VIDA DIARIA?

Las matrices son utilizadas principalmente en problemas matemáticos, física, cálculos lineales, etc..,
además actualmente es un componente esencial en el lenguaje de programación ya que la mayoría
de ordenadores como tablas organizadas en filas y columnas: hojas de cálculo, bases de datos y en
el estudio de las ¿Cuántos tipos de matrices cuadradas hay? Clases de matrices cuadradas
 Matriz triangular superior.
 Matriz triangular inferior.
 Matriz diagonal.
 Matriz unidad.

También podría gustarte