SlideShare una empresa de Scribd logo
1 de 18
• Algoritmo de Búsqueda.
• Vector.
Algoritmo de búsqueda
Un algoritmo de búsqueda es aquel que está diseñado para localizar un
elemento con ciertas propiedades dentro de una estructura de datos; por
ejemplo, ubicar el registro correspondiente a cierta persona en una base
de datos, o el mejor movimiento en una partida de ajedrez.
La variante más simple del problema es la búsqueda de un número en un
vector.
Búsqueda dicotómica
Elementos necesarios en una búsqueda :
log2(n) donde n = elementos de la búsqueda
Ejemplo: log2(1.000.000) ≈ 20
Búsqueda secuencial.
Se utiliza cuando el vector no está ordenado o no puede ser ordenado
previamente. Consiste en buscar el elemento comparándolo
secuencialmente (de ahí su nombre) con cada elemento del arreglo hasta
encontrarlo, o hasta que se llegue al final. La existencia se puede asegurar
cuando el elemento es localizado, pero no podemos asegurar la no
existencia hasta no haber analizado todos los elementos del arreglo. A
continuación se muestra el pseudocódigo del algoritmo:
Búsqueda dicotómica (binaria).
Se utiliza cuando el vector en el que queremos determinar la existencia de un elemento
está previamente ordenado. Este algoritmo reduce el tiempo de búsqueda
considerablemente, ya que disminuye exponencialmente el número de iteraciones
necesarias.
Está altamente recomendado para buscar en arrays de gran tamaño. Por ejemplo, en uno
conteniendo 50.000.000 elementos, realiza como máximo 26 comparaciones (en el peor
de los casos).
Para implementar este algoritmo se compara el elemento a buscar con un elemento
cualquiera del array (normalmente el elemento central): si el valor de éste es mayor que
el del elemento buscado se repite el procedimiento en la parte del array que va desde el
inicio de éste hasta el elemento tomado, en caso contrario se toma la parte del array que
va desde el elemento tomado hasta el final. De esta manera obtenemos intervalos cada
vez más pequeños, hasta que se obtenga un intervalo indivisible. Si el elemento no se
encuentra dentro de este último entonces se deduce que el elemento buscado no se
encuentra en todo el array.
A continuación se presenta el pseudocódigo del algoritmo, tomando como elemento
inicial el elemento central del array.
Implementación Recursiva en C++
Vector
Informática
En programación, una matriz o vector (llamados en inglés arrays) es una zona de
almacenamiento continuo, 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 tuviera 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 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ás adecuado utilizar
una lista, ya que esta estructura puede cambiar de tamaño fácilmente durante la
ejecución de un programa.
Índices.
Todo vector se compone de un determinado número de elementos. 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:
• Indexación base-cero (0): En este modo el primer elemento del vector será
la componente cero ('0') del mismo, es decir, tendrá el índice '0'. En
consecuencia, si el vector tiene 'n' componentes la última tendrá como
índice el valor 'n-1'. El lenguaje C es un ejemplo típico que utiliza este
modo de indexación.
• Indexación 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).
• 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).
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:
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":
Forma de acceso:
La forma de acceder a los elementos de la matriz es directa; esto significa
que el elemento deseado es obtenido 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 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 bucles. El siguiente pseudocódigo muestra un
algoritmo típico para recorrer un vector y aplicar una función a
cada una de las componentes del vector:
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 vectores diná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 la
memoria 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 (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.
Ejemplo en C
Comienzo del vector
(vector (0), primer
elemento)
((indice * sizeof (int)
cantidad de bytes de
desplazamiento desde la
base.)
El ejemplo anterior está hecho para el lenguaje C++. En C, para crear
vectores dinámicos se tendrían 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.
Vectores multidimensionales.
En Basic, Java y otros lenguajes es posible
declarar matrices multidimensionales,
entendiéndolas como un vector de x
dimensión. En dichos casos en 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 desde '0' a '1'. Los
elementos serían accedidos del siguiente
modo:

Más contenido relacionado

La actualidad más candente

Método de Búsqueda Hash
Método de Búsqueda HashMétodo de Búsqueda Hash
Método de Búsqueda HashBlanca Parra
 
Pilas como estructura de datos..
Pilas como estructura de datos..Pilas como estructura de datos..
Pilas como estructura de datos..NANO-06
 
Operaciones con matrices
Operaciones con matricesOperaciones con matrices
Operaciones con matricessilesilfer
 
Cuadro comparativo algoritmos de busqueda
Cuadro comparativo algoritmos de busquedaCuadro comparativo algoritmos de busqueda
Cuadro comparativo algoritmos de busquedaCristopher Morales Ruiz
 
Importancia de las listas Estructura de datos.
Importancia de las listas Estructura de datos.Importancia de las listas Estructura de datos.
Importancia de las listas Estructura de datos.xaviercamposm
 
Informe algoritmos de busqueda
Informe algoritmos de busquedaInforme algoritmos de busqueda
Informe algoritmos de busquedaGonzalo Retamal
 

La actualidad más candente (20)

Método por plegamiento Hash
Método por plegamiento HashMétodo por plegamiento Hash
Método por plegamiento Hash
 
Método de Búsqueda Hash
Método de Búsqueda HashMétodo de Búsqueda Hash
Método de Búsqueda Hash
 
Listas enlazadas
Listas enlazadasListas enlazadas
Listas enlazadas
 
Arreglos unidimensionales
Arreglos unidimensionalesArreglos unidimensionales
Arreglos unidimensionales
 
Listas doblemente enlazadas
Listas doblemente enlazadasListas doblemente enlazadas
Listas doblemente enlazadas
 
Pilas como estructura de datos..
Pilas como estructura de datos..Pilas como estructura de datos..
Pilas como estructura de datos..
 
Operaciones con matrices
Operaciones con matricesOperaciones con matrices
Operaciones con matrices
 
Arboles Binarios
Arboles BinariosArboles Binarios
Arboles Binarios
 
Cuadro comparativo algoritmos de busqueda
Cuadro comparativo algoritmos de busquedaCuadro comparativo algoritmos de busqueda
Cuadro comparativo algoritmos de busqueda
 
Estructura de Datos - Unidad 6 Metodos de busqueda
Estructura de Datos - Unidad 6 Metodos de busquedaEstructura de Datos - Unidad 6 Metodos de busqueda
Estructura de Datos - Unidad 6 Metodos de busqueda
 
Búsqueda secuencial y binaria
Búsqueda secuencial y binariaBúsqueda secuencial y binaria
Búsqueda secuencial y binaria
 
Lista simple
Lista simpleLista simple
Lista simple
 
Recursividad
RecursividadRecursividad
Recursividad
 
Listas, pilas y colas
Listas, pilas y colasListas, pilas y colas
Listas, pilas y colas
 
Estructura datos pilas y colas
Estructura datos pilas y colasEstructura datos pilas y colas
Estructura datos pilas y colas
 
Importancia de las listas Estructura de datos.
Importancia de las listas Estructura de datos.Importancia de las listas Estructura de datos.
Importancia de las listas Estructura de datos.
 
Informe algoritmos de busqueda
Informe algoritmos de busquedaInforme algoritmos de busqueda
Informe algoritmos de busqueda
 
Organización aleatoria o indirecta
Organización aleatoria o indirectaOrganización aleatoria o indirecta
Organización aleatoria o indirecta
 
Tablas Hash
Tablas HashTablas Hash
Tablas Hash
 
Programación 3: listas enlazadas
Programación 3: listas enlazadasProgramación 3: listas enlazadas
Programación 3: listas enlazadas
 

Similar a Vectores - Informática

Presentacion de vectores
Presentacion de vectoresPresentacion de vectores
Presentacion de vectoresletty20151998
 
Presentacion de vectores y matrices
Presentacion de vectores y matricesPresentacion de vectores y matrices
Presentacion de vectores y matricesletty20151998
 
Vectores en power point [recuperado]
Vectores en power point [recuperado]Vectores en power point [recuperado]
Vectores en power point [recuperado]herminiajimenez123
 
Vectores, matrices y estructuras
Vectores, matrices y estructurasVectores, matrices y estructuras
Vectores, matrices y estructurasrichmadriz
 
Ordenacion y busqueda
Ordenacion y busquedaOrdenacion y busqueda
Ordenacion y busquedaOsirysRock
 
Angela y vicky I-B
Angela y vicky I-BAngela y vicky I-B
Angela y vicky I-BvictoriaRJ
 
Mapas y Diccionarios - Colecciones Parametrizadas
Mapas y Diccionarios - Colecciones ParametrizadasMapas y Diccionarios - Colecciones Parametrizadas
Mapas y Diccionarios - Colecciones ParametrizadasChristian Collaguazo Malla
 
Ordenacion y busqueda
Ordenacion y busquedaOrdenacion y busqueda
Ordenacion y busquedaIrvingMoran4
 
Revista digital vectores y matrices
Revista digital vectores y matricesRevista digital vectores y matrices
Revista digital vectores y matricesflaquita_dany
 
Estructuras de Datos Elementos y Arreglos.ppt
Estructuras de Datos Elementos y Arreglos.pptEstructuras de Datos Elementos y Arreglos.ppt
Estructuras de Datos Elementos y Arreglos.pptAndersonHernandezara
 
Expo array
Expo arrayExpo array
Expo arrayEd Burke
 
Estructura de datos y algoritmos
Estructura de datos y algoritmosEstructura de datos y algoritmos
Estructura de datos y algoritmosrenatodquintero
 
Clase 10 Estructuras De Datos Y Arreglos
Clase 10 Estructuras De Datos Y ArreglosClase 10 Estructuras De Datos Y Arreglos
Clase 10 Estructuras De Datos Y Arreglossalomonaquino
 
Acceso a datos en aplicaciones web del entorno servidor
Acceso a datos en aplicaciones web del entorno servidorAcceso a datos en aplicaciones web del entorno servidor
Acceso a datos en aplicaciones web del entorno servidorJomicast
 

Similar a Vectores - Informática (20)

Presentacion de vectores
Presentacion de vectoresPresentacion de vectores
Presentacion de vectores
 
Presentacion de vectores y matrices
Presentacion de vectores y matricesPresentacion de vectores y matrices
Presentacion de vectores y matrices
 
Vectores y matrices
Vectores y matricesVectores y matrices
Vectores y matrices
 
Vectores en power point [recuperado]
Vectores en power point [recuperado]Vectores en power point [recuperado]
Vectores en power point [recuperado]
 
Grupo
GrupoGrupo
Grupo
 
Vectores, matrices y estructuras
Vectores, matrices y estructurasVectores, matrices y estructuras
Vectores, matrices y estructuras
 
Ordenacion y busqueda
Ordenacion y busquedaOrdenacion y busqueda
Ordenacion y busqueda
 
Angela y vicky I-B
Angela y vicky I-BAngela y vicky I-B
Angela y vicky I-B
 
Mapas y Diccionarios - Colecciones Parametrizadas
Mapas y Diccionarios - Colecciones ParametrizadasMapas y Diccionarios - Colecciones Parametrizadas
Mapas y Diccionarios - Colecciones Parametrizadas
 
Ordenacion y busqueda
Ordenacion y busquedaOrdenacion y busqueda
Ordenacion y busqueda
 
Revista digital vectores y matrices
Revista digital vectores y matricesRevista digital vectores y matrices
Revista digital vectores y matrices
 
Estructuras de Datos Elementos y Arreglos.ppt
Estructuras de Datos Elementos y Arreglos.pptEstructuras de Datos Elementos y Arreglos.ppt
Estructuras de Datos Elementos y Arreglos.ppt
 
Expo array
Expo arrayExpo array
Expo array
 
Arrays
ArraysArrays
Arrays
 
Vectores en programación
Vectores en programaciónVectores en programación
Vectores en programación
 
Matrices en php
Matrices en phpMatrices en php
Matrices en php
 
Estructura de datos y algoritmos
Estructura de datos y algoritmosEstructura de datos y algoritmos
Estructura de datos y algoritmos
 
Clase 10 Estructuras De Datos Y Arreglos
Clase 10 Estructuras De Datos Y ArreglosClase 10 Estructuras De Datos Y Arreglos
Clase 10 Estructuras De Datos Y Arreglos
 
Arrays
ArraysArrays
Arrays
 
Acceso a datos en aplicaciones web del entorno servidor
Acceso a datos en aplicaciones web del entorno servidorAcceso a datos en aplicaciones web del entorno servidor
Acceso a datos en aplicaciones web del entorno servidor
 

Más de compumet sac

DAFA M2 Lectura 8a: RCD-038-2013-OEFA
DAFA M2 Lectura 8a: RCD-038-2013-OEFADAFA M2 Lectura 8a: RCD-038-2013-OEFA
DAFA M2 Lectura 8a: RCD-038-2013-OEFAcompumet sac
 
DAFA M2 Lectura 8: Política Nacional del Ambiente
DAFA M2 Lectura 8: Política Nacional del AmbienteDAFA M2 Lectura 8: Política Nacional del Ambiente
DAFA M2 Lectura 8: Política Nacional del Ambientecompumet sac
 
DAFA M2 Lectura 07: Reflexiones Sobre OEFA
DAFA M2 Lectura 07: Reflexiones Sobre OEFADAFA M2 Lectura 07: Reflexiones Sobre OEFA
DAFA M2 Lectura 07: Reflexiones Sobre OEFAcompumet sac
 
DAFA Lectura 06: Plana 2011-2021
DAFA Lectura 06: Plana 2011-2021DAFA Lectura 06: Plana 2011-2021
DAFA Lectura 06: Plana 2011-2021compumet sac
 
SIG-G3-M3 Lectura 10: DS-004-2014 PRODUCE
SIG-G3-M3 Lectura 10: DS-004-2014 PRODUCESIG-G3-M3 Lectura 10: DS-004-2014 PRODUCE
SIG-G3-M3 Lectura 10: DS-004-2014 PRODUCEcompumet sac
 
DAFA M1 Lectura 04 : Código de Etica del Auditor Gubernamental del Perú
DAFA M1 Lectura 04 : Código de Etica del Auditor Gubernamental del PerúDAFA M1 Lectura 04 : Código de Etica del Auditor Gubernamental del Perú
DAFA M1 Lectura 04 : Código de Etica del Auditor Gubernamental del Perúcompumet sac
 
DAFA M1 Lectura 03 : Modifican Normas y Manual de Auditoría Gubernamental,
DAFA M1 Lectura 03 : Modifican Normas y Manual de Auditoría Gubernamental,DAFA M1 Lectura 03 : Modifican Normas y Manual de Auditoría Gubernamental,
DAFA M1 Lectura 03 : Modifican Normas y Manual de Auditoría Gubernamental,compumet sac
 
SIG-FB4, Modulo II - Lectura 5b OHSAS 18002
SIG-FB4, Modulo II - Lectura 5b OHSAS 18002SIG-FB4, Modulo II - Lectura 5b OHSAS 18002
SIG-FB4, Modulo II - Lectura 5b OHSAS 18002compumet sac
 
SIG-FB4, Modulo II - Lectura 5a OHSAS 18001
SIG-FB4, Modulo II - Lectura 5a OHSAS 18001SIG-FB4, Modulo II - Lectura 5a OHSAS 18001
SIG-FB4, Modulo II - Lectura 5a OHSAS 18001compumet sac
 
SIG-FB4, Modulo II, Lectura 04 Directrices de la OIT
SIG-FB4, Modulo II, Lectura 04 Directrices de la OITSIG-FB4, Modulo II, Lectura 04 Directrices de la OIT
SIG-FB4, Modulo II, Lectura 04 Directrices de la OITcompumet sac
 
SIG-FB4, Modulo II, Tema 02 Gestión de la Salud en el Trabajo
SIG-FB4, Modulo II, Tema 02 Gestión de la Salud en el TrabajoSIG-FB4, Modulo II, Tema 02 Gestión de la Salud en el Trabajo
SIG-FB4, Modulo II, Tema 02 Gestión de la Salud en el Trabajocompumet sac
 
Diplomatura Sistema de Gestión SIG-FB4 - 13Junio2015
Diplomatura Sistema de Gestión SIG-FB4 - 13Junio2015Diplomatura Sistema de Gestión SIG-FB4 - 13Junio2015
Diplomatura Sistema de Gestión SIG-FB4 - 13Junio2015compumet sac
 
AyC M3 Lectura 09 > Gestion de Inventarios
AyC M3 Lectura 09 > Gestion de InventariosAyC M3 Lectura 09 > Gestion de Inventarios
AyC M3 Lectura 09 > Gestion de Inventarioscompumet sac
 
DS 040-2014-EM > Reglamento de Proteccion Ambiental
DS 040-2014-EM > Reglamento de Proteccion AmbientalDS 040-2014-EM > Reglamento de Proteccion Ambiental
DS 040-2014-EM > Reglamento de Proteccion Ambientalcompumet sac
 
AyC M2 Lectura 08b > RM-004-2014-MINSA Modif_312
AyC M2 Lectura 08b > RM-004-2014-MINSA Modif_312AyC M2 Lectura 08b > RM-004-2014-MINSA Modif_312
AyC M2 Lectura 08b > RM-004-2014-MINSA Modif_312compumet sac
 
AyC M2 Lectura 08a > RM-312-2011-MINSA
AyC M2 Lectura 08a > RM-312-2011-MINSAAyC M2 Lectura 08a > RM-312-2011-MINSA
AyC M2 Lectura 08a > RM-312-2011-MINSAcompumet sac
 
CdP m3Lectura 12 : Fe de Erratas PNDP
CdP m3Lectura 12 :  Fe de Erratas PNDPCdP m3Lectura 12 :  Fe de Erratas PNDP
CdP m3Lectura 12 : Fe de Erratas PNDPcompumet sac
 
CdP m3 Lectura 12 : PNDP
CdP m3 Lectura 12 : PNDPCdP m3 Lectura 12 : PNDP
CdP m3 Lectura 12 : PNDPcompumet sac
 
AyC m2 Lectura 7 : OHSAS 18001
AyC m2 Lectura 7 : OHSAS 18001AyC m2 Lectura 7 : OHSAS 18001
AyC m2 Lectura 7 : OHSAS 18001compumet sac
 

Más de compumet sac (20)

DAFA M2 Lectura 8a: RCD-038-2013-OEFA
DAFA M2 Lectura 8a: RCD-038-2013-OEFADAFA M2 Lectura 8a: RCD-038-2013-OEFA
DAFA M2 Lectura 8a: RCD-038-2013-OEFA
 
DAFA M2 Lectura 8: Política Nacional del Ambiente
DAFA M2 Lectura 8: Política Nacional del AmbienteDAFA M2 Lectura 8: Política Nacional del Ambiente
DAFA M2 Lectura 8: Política Nacional del Ambiente
 
DAFA M2 Lectura 07: Reflexiones Sobre OEFA
DAFA M2 Lectura 07: Reflexiones Sobre OEFADAFA M2 Lectura 07: Reflexiones Sobre OEFA
DAFA M2 Lectura 07: Reflexiones Sobre OEFA
 
DAFA Lectura 06: Plana 2011-2021
DAFA Lectura 06: Plana 2011-2021DAFA Lectura 06: Plana 2011-2021
DAFA Lectura 06: Plana 2011-2021
 
DIRSOCYM
DIRSOCYMDIRSOCYM
DIRSOCYM
 
SIG-G3-M3 Lectura 10: DS-004-2014 PRODUCE
SIG-G3-M3 Lectura 10: DS-004-2014 PRODUCESIG-G3-M3 Lectura 10: DS-004-2014 PRODUCE
SIG-G3-M3 Lectura 10: DS-004-2014 PRODUCE
 
DAFA M1 Lectura 04 : Código de Etica del Auditor Gubernamental del Perú
DAFA M1 Lectura 04 : Código de Etica del Auditor Gubernamental del PerúDAFA M1 Lectura 04 : Código de Etica del Auditor Gubernamental del Perú
DAFA M1 Lectura 04 : Código de Etica del Auditor Gubernamental del Perú
 
DAFA M1 Lectura 03 : Modifican Normas y Manual de Auditoría Gubernamental,
DAFA M1 Lectura 03 : Modifican Normas y Manual de Auditoría Gubernamental,DAFA M1 Lectura 03 : Modifican Normas y Manual de Auditoría Gubernamental,
DAFA M1 Lectura 03 : Modifican Normas y Manual de Auditoría Gubernamental,
 
SIG-FB4, Modulo II - Lectura 5b OHSAS 18002
SIG-FB4, Modulo II - Lectura 5b OHSAS 18002SIG-FB4, Modulo II - Lectura 5b OHSAS 18002
SIG-FB4, Modulo II - Lectura 5b OHSAS 18002
 
SIG-FB4, Modulo II - Lectura 5a OHSAS 18001
SIG-FB4, Modulo II - Lectura 5a OHSAS 18001SIG-FB4, Modulo II - Lectura 5a OHSAS 18001
SIG-FB4, Modulo II - Lectura 5a OHSAS 18001
 
SIG-FB4, Modulo II, Lectura 04 Directrices de la OIT
SIG-FB4, Modulo II, Lectura 04 Directrices de la OITSIG-FB4, Modulo II, Lectura 04 Directrices de la OIT
SIG-FB4, Modulo II, Lectura 04 Directrices de la OIT
 
SIG-FB4, Modulo II, Tema 02 Gestión de la Salud en el Trabajo
SIG-FB4, Modulo II, Tema 02 Gestión de la Salud en el TrabajoSIG-FB4, Modulo II, Tema 02 Gestión de la Salud en el Trabajo
SIG-FB4, Modulo II, Tema 02 Gestión de la Salud en el Trabajo
 
Diplomatura Sistema de Gestión SIG-FB4 - 13Junio2015
Diplomatura Sistema de Gestión SIG-FB4 - 13Junio2015Diplomatura Sistema de Gestión SIG-FB4 - 13Junio2015
Diplomatura Sistema de Gestión SIG-FB4 - 13Junio2015
 
AyC M3 Lectura 09 > Gestion de Inventarios
AyC M3 Lectura 09 > Gestion de InventariosAyC M3 Lectura 09 > Gestion de Inventarios
AyC M3 Lectura 09 > Gestion de Inventarios
 
DS 040-2014-EM > Reglamento de Proteccion Ambiental
DS 040-2014-EM > Reglamento de Proteccion AmbientalDS 040-2014-EM > Reglamento de Proteccion Ambiental
DS 040-2014-EM > Reglamento de Proteccion Ambiental
 
AyC M2 Lectura 08b > RM-004-2014-MINSA Modif_312
AyC M2 Lectura 08b > RM-004-2014-MINSA Modif_312AyC M2 Lectura 08b > RM-004-2014-MINSA Modif_312
AyC M2 Lectura 08b > RM-004-2014-MINSA Modif_312
 
AyC M2 Lectura 08a > RM-312-2011-MINSA
AyC M2 Lectura 08a > RM-312-2011-MINSAAyC M2 Lectura 08a > RM-312-2011-MINSA
AyC M2 Lectura 08a > RM-312-2011-MINSA
 
CdP m3Lectura 12 : Fe de Erratas PNDP
CdP m3Lectura 12 :  Fe de Erratas PNDPCdP m3Lectura 12 :  Fe de Erratas PNDP
CdP m3Lectura 12 : Fe de Erratas PNDP
 
CdP m3 Lectura 12 : PNDP
CdP m3 Lectura 12 : PNDPCdP m3 Lectura 12 : PNDP
CdP m3 Lectura 12 : PNDP
 
AyC m2 Lectura 7 : OHSAS 18001
AyC m2 Lectura 7 : OHSAS 18001AyC m2 Lectura 7 : OHSAS 18001
AyC m2 Lectura 7 : OHSAS 18001
 

Último

SEMICONDUCTORES lafhnoealifsncknisz.pptx
SEMICONDUCTORES lafhnoealifsncknisz.pptxSEMICONDUCTORES lafhnoealifsncknisz.pptx
SEMICONDUCTORES lafhnoealifsncknisz.pptxOSCARADRIANMEDINADUR
 
PRESENTACIÓN ANALISIS ESTRUCTURAL II.pptx
PRESENTACIÓN ANALISIS ESTRUCTURAL II.pptxPRESENTACIÓN ANALISIS ESTRUCTURAL II.pptx
PRESENTACIÓN ANALISIS ESTRUCTURAL II.pptxStibeCr
 
Sistema Operativo Windows Capas Estructura
Sistema Operativo Windows Capas EstructuraSistema Operativo Windows Capas Estructura
Sistema Operativo Windows Capas EstructuraJairoMaxKevinMartine
 
electricidad básica, ejemplos prácticos y ejercicios
electricidad básica, ejemplos prácticos y ejercicioselectricidad básica, ejemplos prácticos y ejercicios
electricidad básica, ejemplos prácticos y ejerciciosEfrain Yungan
 
La Evolución Industrial en el Ecuador.pdf
La Evolución Industrial en el Ecuador.pdfLa Evolución Industrial en el Ecuador.pdf
La Evolución Industrial en el Ecuador.pdfAnthony Gualpa
 
Sales binarias y oxisales química inorganica
Sales binarias y oxisales química inorganicaSales binarias y oxisales química inorganica
Sales binarias y oxisales química inorganicakiaranoemi
 
PLANTILLA DE PP PREVENCIONISTA DE RIESGOS LABORALES (1).pptx.pdf
PLANTILLA DE PP PREVENCIONISTA DE RIESGOS LABORALES (1).pptx.pdfPLANTILLA DE PP PREVENCIONISTA DE RIESGOS LABORALES (1).pptx.pdf
PLANTILLA DE PP PREVENCIONISTA DE RIESGOS LABORALES (1).pptx.pdfmcamposa87
 
movimiento circular univormemente variado
movimiento circular univormemente variadomovimiento circular univormemente variado
movimiento circular univormemente variadoEsthefaniaAuquilla1
 
FOTOCELDAS Y LOS DIFERENTES TIPOS QUE EXISTEN.pdf
FOTOCELDAS Y LOS DIFERENTES TIPOS QUE EXISTEN.pdfFOTOCELDAS Y LOS DIFERENTES TIPOS QUE EXISTEN.pdf
FOTOCELDAS Y LOS DIFERENTES TIPOS QUE EXISTEN.pdfDanielAlejandroAguir2
 
Esmerling de la Cruz (Proyecto de Programación)
Esmerling de la Cruz (Proyecto de Programación)Esmerling de la Cruz (Proyecto de Programación)
Esmerling de la Cruz (Proyecto de Programación)esmerling14
 
Capacitación Anexo 6 D.s. 023 seguridad y salud ocupacional
Capacitación Anexo 6 D.s. 023 seguridad y salud ocupacionalCapacitación Anexo 6 D.s. 023 seguridad y salud ocupacional
Capacitación Anexo 6 D.s. 023 seguridad y salud ocupacionalamador030809
 
ENFOQUE METODOLOGICO DE LA INVESTIGACION
ENFOQUE METODOLOGICO DE LA INVESTIGACIONENFOQUE METODOLOGICO DE LA INVESTIGACION
ENFOQUE METODOLOGICO DE LA INVESTIGACIONJOHNNY SURI MAMANI
 
Analisis de reparación de fisuras superficiales en pavimentos.pptx
Analisis de reparación de fisuras superficiales en pavimentos.pptxAnalisis de reparación de fisuras superficiales en pavimentos.pptx
Analisis de reparación de fisuras superficiales en pavimentos.pptxasotomayorm2
 
bombas-hidraulicas para permitir transporte en una instalación
bombas-hidraulicas para permitir  transporte en una instalaciónbombas-hidraulicas para permitir  transporte en una instalación
bombas-hidraulicas para permitir transporte en una instalaciónLuisLobatoingaruca
 
EJERCICIOS DE -LEY-DE-OHM aplicaciones prácticas
EJERCICIOS DE -LEY-DE-OHM aplicaciones prácticasEJERCICIOS DE -LEY-DE-OHM aplicaciones prácticas
EJERCICIOS DE -LEY-DE-OHM aplicaciones prácticasEfrain Yungan
 
Transporte y Manipulación de Explosivos - SUCAMEC
Transporte y Manipulación de Explosivos - SUCAMECTransporte y Manipulación de Explosivos - SUCAMEC
Transporte y Manipulación de Explosivos - SUCAMECamador030809
 
GeoS33333333333333333333333333333333.pdf
GeoS33333333333333333333333333333333.pdfGeoS33333333333333333333333333333333.pdf
GeoS33333333333333333333333333333333.pdffredyflores58
 
Unid 3 Extraccion 10-10-23 operaciones unitarias
Unid 3 Extraccion 10-10-23 operaciones unitariasUnid 3 Extraccion 10-10-23 operaciones unitarias
Unid 3 Extraccion 10-10-23 operaciones unitariasPatriciaRaimondi
 
Sales Básicas Quimica, conocer como se forman las sales basicas
Sales Básicas Quimica, conocer como se forman las sales basicasSales Básicas Quimica, conocer como se forman las sales basicas
Sales Básicas Quimica, conocer como se forman las sales basicasPaulina Cargua
 
R. Contraloria 432-2023-CG obras x AD.pdf
R. Contraloria 432-2023-CG obras x AD.pdfR. Contraloria 432-2023-CG obras x AD.pdf
R. Contraloria 432-2023-CG obras x AD.pdfrudy cabezas
 

Último (20)

SEMICONDUCTORES lafhnoealifsncknisz.pptx
SEMICONDUCTORES lafhnoealifsncknisz.pptxSEMICONDUCTORES lafhnoealifsncknisz.pptx
SEMICONDUCTORES lafhnoealifsncknisz.pptx
 
PRESENTACIÓN ANALISIS ESTRUCTURAL II.pptx
PRESENTACIÓN ANALISIS ESTRUCTURAL II.pptxPRESENTACIÓN ANALISIS ESTRUCTURAL II.pptx
PRESENTACIÓN ANALISIS ESTRUCTURAL II.pptx
 
Sistema Operativo Windows Capas Estructura
Sistema Operativo Windows Capas EstructuraSistema Operativo Windows Capas Estructura
Sistema Operativo Windows Capas Estructura
 
electricidad básica, ejemplos prácticos y ejercicios
electricidad básica, ejemplos prácticos y ejercicioselectricidad básica, ejemplos prácticos y ejercicios
electricidad básica, ejemplos prácticos y ejercicios
 
La Evolución Industrial en el Ecuador.pdf
La Evolución Industrial en el Ecuador.pdfLa Evolución Industrial en el Ecuador.pdf
La Evolución Industrial en el Ecuador.pdf
 
Sales binarias y oxisales química inorganica
Sales binarias y oxisales química inorganicaSales binarias y oxisales química inorganica
Sales binarias y oxisales química inorganica
 
PLANTILLA DE PP PREVENCIONISTA DE RIESGOS LABORALES (1).pptx.pdf
PLANTILLA DE PP PREVENCIONISTA DE RIESGOS LABORALES (1).pptx.pdfPLANTILLA DE PP PREVENCIONISTA DE RIESGOS LABORALES (1).pptx.pdf
PLANTILLA DE PP PREVENCIONISTA DE RIESGOS LABORALES (1).pptx.pdf
 
movimiento circular univormemente variado
movimiento circular univormemente variadomovimiento circular univormemente variado
movimiento circular univormemente variado
 
FOTOCELDAS Y LOS DIFERENTES TIPOS QUE EXISTEN.pdf
FOTOCELDAS Y LOS DIFERENTES TIPOS QUE EXISTEN.pdfFOTOCELDAS Y LOS DIFERENTES TIPOS QUE EXISTEN.pdf
FOTOCELDAS Y LOS DIFERENTES TIPOS QUE EXISTEN.pdf
 
Esmerling de la Cruz (Proyecto de Programación)
Esmerling de la Cruz (Proyecto de Programación)Esmerling de la Cruz (Proyecto de Programación)
Esmerling de la Cruz (Proyecto de Programación)
 
Capacitación Anexo 6 D.s. 023 seguridad y salud ocupacional
Capacitación Anexo 6 D.s. 023 seguridad y salud ocupacionalCapacitación Anexo 6 D.s. 023 seguridad y salud ocupacional
Capacitación Anexo 6 D.s. 023 seguridad y salud ocupacional
 
ENFOQUE METODOLOGICO DE LA INVESTIGACION
ENFOQUE METODOLOGICO DE LA INVESTIGACIONENFOQUE METODOLOGICO DE LA INVESTIGACION
ENFOQUE METODOLOGICO DE LA INVESTIGACION
 
Analisis de reparación de fisuras superficiales en pavimentos.pptx
Analisis de reparación de fisuras superficiales en pavimentos.pptxAnalisis de reparación de fisuras superficiales en pavimentos.pptx
Analisis de reparación de fisuras superficiales en pavimentos.pptx
 
bombas-hidraulicas para permitir transporte en una instalación
bombas-hidraulicas para permitir  transporte en una instalaciónbombas-hidraulicas para permitir  transporte en una instalación
bombas-hidraulicas para permitir transporte en una instalación
 
EJERCICIOS DE -LEY-DE-OHM aplicaciones prácticas
EJERCICIOS DE -LEY-DE-OHM aplicaciones prácticasEJERCICIOS DE -LEY-DE-OHM aplicaciones prácticas
EJERCICIOS DE -LEY-DE-OHM aplicaciones prácticas
 
Transporte y Manipulación de Explosivos - SUCAMEC
Transporte y Manipulación de Explosivos - SUCAMECTransporte y Manipulación de Explosivos - SUCAMEC
Transporte y Manipulación de Explosivos - SUCAMEC
 
GeoS33333333333333333333333333333333.pdf
GeoS33333333333333333333333333333333.pdfGeoS33333333333333333333333333333333.pdf
GeoS33333333333333333333333333333333.pdf
 
Unid 3 Extraccion 10-10-23 operaciones unitarias
Unid 3 Extraccion 10-10-23 operaciones unitariasUnid 3 Extraccion 10-10-23 operaciones unitarias
Unid 3 Extraccion 10-10-23 operaciones unitarias
 
Sales Básicas Quimica, conocer como se forman las sales basicas
Sales Básicas Quimica, conocer como se forman las sales basicasSales Básicas Quimica, conocer como se forman las sales basicas
Sales Básicas Quimica, conocer como se forman las sales basicas
 
R. Contraloria 432-2023-CG obras x AD.pdf
R. Contraloria 432-2023-CG obras x AD.pdfR. Contraloria 432-2023-CG obras x AD.pdf
R. Contraloria 432-2023-CG obras x AD.pdf
 

Vectores - Informática

  • 1. • Algoritmo de Búsqueda. • Vector.
  • 2. Algoritmo de búsqueda Un algoritmo de búsqueda es aquel que está diseñado para localizar un elemento con ciertas propiedades dentro de una estructura de datos; por ejemplo, ubicar el registro correspondiente a cierta persona en una base de datos, o el mejor movimiento en una partida de ajedrez. La variante más simple del problema es la búsqueda de un número en un vector. Búsqueda dicotómica Elementos necesarios en una búsqueda : log2(n) donde n = elementos de la búsqueda Ejemplo: log2(1.000.000) ≈ 20
  • 3. Búsqueda secuencial. Se utiliza cuando el vector no está ordenado o no puede ser ordenado previamente. Consiste en buscar el elemento comparándolo secuencialmente (de ahí su nombre) con cada elemento del arreglo hasta encontrarlo, o hasta que se llegue al final. La existencia se puede asegurar cuando el elemento es localizado, pero no podemos asegurar la no existencia hasta no haber analizado todos los elementos del arreglo. A continuación se muestra el pseudocódigo del algoritmo:
  • 4.
  • 5. Búsqueda dicotómica (binaria). Se utiliza cuando el vector en el que queremos determinar la existencia de un elemento está previamente ordenado. Este algoritmo reduce el tiempo de búsqueda considerablemente, ya que disminuye exponencialmente el número de iteraciones necesarias. Está altamente recomendado para buscar en arrays de gran tamaño. Por ejemplo, en uno conteniendo 50.000.000 elementos, realiza como máximo 26 comparaciones (en el peor de los casos). Para implementar este algoritmo se compara el elemento a buscar con un elemento cualquiera del array (normalmente el elemento central): si el valor de éste es mayor que el del elemento buscado se repite el procedimiento en la parte del array que va desde el inicio de éste hasta el elemento tomado, en caso contrario se toma la parte del array que va desde el elemento tomado hasta el final. De esta manera obtenemos intervalos cada vez más pequeños, hasta que se obtenga un intervalo indivisible. Si el elemento no se encuentra dentro de este último entonces se deduce que el elemento buscado no se encuentra en todo el array. A continuación se presenta el pseudocódigo del algoritmo, tomando como elemento inicial el elemento central del array.
  • 6.
  • 8.
  • 10. En programación, una matriz o vector (llamados en inglés arrays) es una zona de almacenamiento continuo, 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 tuviera 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 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ás adecuado utilizar una lista, ya que esta estructura puede cambiar de tamaño fácilmente durante la ejecución de un programa.
  • 11. Índices. Todo vector se compone de un determinado número de elementos. 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: • Indexación base-cero (0): En este modo el primer elemento del vector será la componente cero ('0') del mismo, es decir, tendrá el índice '0'. En consecuencia, si el vector tiene 'n' componentes la última tendrá como índice el valor 'n-1'. El lenguaje C es un ejemplo típico que utiliza este modo de indexación. • Indexación 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). • 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).
  • 12. 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: 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":
  • 13. Forma de acceso: La forma de acceder a los elementos de la matriz es directa; esto significa que el elemento deseado es obtenido 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 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 bucles. El siguiente pseudocódigo muestra un algoritmo típico para recorrer un vector y aplicar una función a cada una de las componentes del vector:
  • 14. 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 vectores diná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 la memoria 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 (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.
  • 16. Comienzo del vector (vector (0), primer elemento) ((indice * sizeof (int) cantidad de bytes de desplazamiento desde la base.)
  • 17. El ejemplo anterior está hecho para el lenguaje C++. En C, para crear vectores dinámicos se tendrían 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.
  • 18. Vectores multidimensionales. En Basic, Java y otros lenguajes es posible declarar matrices multidimensionales, entendiéndolas como un vector de x dimensión. En dichos casos en 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 desde '0' a '1'. Los elementos serían accedidos del siguiente modo: