SlideShare una empresa de Scribd logo
1 de 14
Descargar para leer sin conexión
Algoritmos de Búsquedas
“Búsqueda Lineal”
Concepción-Talcahuano
Ingeniería en Informática
Análisis de Algoritmos
Nombre Alumno (s): Nelson Silva.
Paz Morales.
Claudio Marín.
Héctor Rifo.
Nombre Profesor: Pilar Pardo.
Fecha: 15/04/2014
INDICE
1. introducción.................................................................................................... 3
2. Algoritmos de búsqueda................................................................................ 4
2.1 Búsqueda lineal........................................................................................ 4
2.1.1 Complejidad de la búsqueda lineal.................................................. 4
2.2 Búsqueda binaria ..................................................................................... 7
2.3 Búsqueda mediante transformación de claves (Hashing).................. 10
2.3.1 Truncamiento................................................................................... 10
2.3.2 Plegamiento ..................................................................................... 11
2.3.3 Aritmética modular.......................................................................... 12
2.3.4 Mitad cuadrado ................................................................................ 13
3. conclusión..................................................................................................... 14
Página 3
1. INTRODUCCIÓN
En el siguiente informe se tomará el tema de la búsqueda de datos
en Algoritmos, la cual tiene múltiples opciones del manejo de datos que presentan
distintos casos de éxitos, el peor, el promedio y el mejor.
Además de tratar con estos casos se analizará su eficacia,
eficiencia y calidad de búsqueda para cada tipo de opciones.
Página 4
2. ALGORITMOS DE BÚSQUEDA
2.1 Búsqueda lineal
La búsqueda lineal es sencilla de implementar e intuitiva. Básicamente consiste
en buscar de manera secuencial un elemento, es decir, preguntar si el
elemento buscado es igual al primero, segundo, tercero y así sucesivamente
hasta llegar al último elemento del vector ó haber logrado encontrar dicho
elemento antes de llegar al final. Si encuentra el elemento, entregara un
mensaje positivo, como: "existe el elemento", además de poder entregar la
posición de dicho elemento (índice). Y en caso contrario, entregara un mensaje
negativo, como: "el elemento no existe". Esta búsqueda no requiere ningún
requisito por parte del vector, por consiguiente no requiere que el vector este
ordenado, tampoco qué sea par o impar.
2.1.1 Complejidad de la búsqueda lineal
Mejor Caso:
Es cuando la búsqueda termina tan pronto encuentra el elemento buscado
en el array. Si tenemos suerte, puede ser que la primera posición examinada
contenga el elemento que buscamos, en cuyo caso el algoritmo informará que
tuvo éxito después de una sola comparación.
Ejemplo:
0 1 2 3 4 5 6 7 8 9
12 32 77 8 51 63 70 24 4 39
Buscar el elemento "12"
1.-12 = 12 Fin de la búsqueda
2.-Mensaje"Elemento existe" posición 0
Página 5
Peor Caso:
Sucede cuando el elemento se encuentra en la última posición del array.
Ejemplo:
0 1 2 3 4 5 6 7 8 9
12 32 77 8 51 63 70 24 4 39
Buscar el elemento "39"
1.- 12 ≠ 39
2.- 32 ≠ 39
3.- 77 ≠ 39
4.- 8 ≠ 39
5.- 51 ≠ 39
6.- 63 ≠ 39
7.- 70 ≠ 39
8.- 24 ≠ 39
9.- 4 ≠ 39
10.- 39 = 39 Fin de la búsqueda
11.- Mensaje "Elemento existe" posición 9
Página 6
Promedio:
Ocurre cuando el elemento a buscar, se encuentra en la posición de en medio
(n/2).
Ejemplo:
0 1 2 3 4 5 6 7 8 9
12 32 77 8 51 63 70 24 4 39
Buscar el elemento "51"
1.- 12 ≠ 39
2.- 32 ≠ 39
3.- 77 ≠ 39
4.- 8 ≠ 39
5.- 51 = 51 Fin de la búsqueda
6.- Mensaje "Elemento existe" posición 4
Página 7
2.2 Búsqueda binaria
El algoritmo de búsqueda binaria es un excelente método para buscar datos
dentro de una estructura (generalmente un arreglo unidimensional). Se le da el
nombre de búsqueda binaria por que el algoritmo divide en dos el arreglo,
aludiendo al concepto de bit, el cual puede tener dos estados.
Para este algoritmo se utiliza el concepto "Divide y vencerás".
Requisito:
Los datos del vector deben estar ordenados.
Procedimiento:
Primero se compara el elemento central del vector con el dato que se quiere
buscar; si este es el elemento buscado, entonces la búsqueda se termina.
Si el elemento no es el que se busca, se comprueba si el elemento a buscar
es mayor o menor al elemento central y si está en la primera o segunda mitad del
vector.
Si el elemento es menor, se vuelve a tomar el elemento central de la
primera mitad y la otra se elimina.
Si el elemento es mayor, se toma el elemento central de la segunda mitad y
la otra se elimina.
Este proceso se repite hasta que se encuentre el elemento que se busca.
Página 8
Ejemplo:
Se puede aplicar en listas lineales como en arboles binarios de búsqueda.
Se debe conocer el número de registros.
Mejor caso:
La búsqueda binaria requiere solo una comparación; esto significa que su
tiempo de ejecución óptimo no depende de la cantidad de datos.
El esfuerzo mínimo es 1.
Caso promedio:
El promedio 1/2log2n.
Página 9
Peor caso:
El algoritmo de búsqueda binaria progresivamente va disminuyendo el
número de elementos sobre el que se realiza la búsqueda a la mitad. Así, tras
log2n divisiones se habrá localizado el elemento o se tendrá la seguridad de que
no estaba.
El esfuerzo máximo para este algoritmo es log2n.
Página
10
2.3 Búsqueda mediante transformación de claves
(Hashing)
Permite en aumentar la velocidad de búsqueda sin necesidad de tener lo
elementos ordenados.
Consiste en transformar claves numéricas o alfanuméricas en direcciones o
índices de un vector.
Existen 4 métodos de transformación de claves:
 Truncamiento
 Plegamiento
 Aritmética modular
 Mitad del cuadrado
2.3.1 Truncamiento
Este método ignora parte de la clave y se deja la parte restante como índice.
Para el caso de que la clave sea de 8 dígitos y tenga 1000 posiciones, entonces
se toma el 1°,2° y 5° digito de izquierda a derecha.
Ejemplos:
Vector: 1000 posiciones
Tamaño clave: 8
Elementos: 1,2 y 5
N°
Elementos
Clave
H(clave)= 481
0 1 2 3 4 5 6 7
7 4 8 7 2 1 9 5
Página
11
Vector: 800 posiciones
Tamaño clave: 8
Elementos: 1,5 y 3
N°
Elementos
Clave
Si H(clave)>vector
H(clave)=834 834 – 800 = 34
2.3.2 Plegamiento
Consiste en dividir la clave en diferentes partes y combinarlas para obtener el
índice.
Todas las partes a excepción de la última debe obtener el mismo número de
dígitos que el tamaño del vector.
Vector: 100 posiciones
Clave: 52136984
H(clave)= 521+369+84
H(clave)= 974 974 = 74
0 1 2 3 4 5 6 7
9 8 2 4 1 3 5 7
521 369 84
Se trunca
Se trunca
Página
12
2.3.3 Aritmética modular
Consiste en dividir la clave por el número de posiciones del vector donde el
resultado es el resto de la división.
H(x)= x MOD m
x= clave
m= tamaño del arreglo
Ejemplo:
Vector: 100 posiciones
Clave: 43276581
H(clave)=43276581 MOD 100
H(clave)=81
Página
13
2.3.4 Mitad cuadrado
Consiste en calcular el cuadrado de la clave y tomar los dígitos centrales de este
resultado.
H(x)=X^2
x= clave
Ejemplo:
Vector: 100 posiciones
Clave: 5478
H(clave)=5478 * 5478
N°
Elementos
Clave
Elementos centrales =3 y 4
H(clave)= 08
0 1 2 3 4 5 6 7
3 0 0 0 8 4 8 4
Página
14
3. CONCLUSIÓN
Dada la investigación, se visualizan distintos datos, ordenados de tal manera
que los algoritmos de búsqueda son ideales para distintos casos.
Los métodos aprendidos, son los siguientes:
 Búsqueda lineal
 Búsqueda binaria
 Búsqueda mediante transformación de claves
 Truncamiento
 Plegamiento
 Aritmética modular
 Mitad cuadrado
Cada uno de ellos muestra desarrollos y son utilizados como métodos de
orden y búsqueda de datos. Como mayor parte, se utiliza en 2 puntos.
1. Determinar si el elemento buscado se encuentra en el conjunto
en el que se busca.
2. Si el elemento está en el conjunto, hallar la posición en la que se
encuentra.

Más contenido relacionado

Destacado

Complejidad de los algoritmos
Complejidad de los algoritmosComplejidad de los algoritmos
Complejidad de los algoritmosHector Rifo Solis
 
Cuadro comparativo quicksort
Cuadro comparativo quicksortCuadro comparativo quicksort
Cuadro comparativo quicksortPatricia Correa
 
Cuadro comparativo Algoritmos de Ordenamiento
Cuadro comparativo Algoritmos de OrdenamientoCuadro comparativo Algoritmos de Ordenamiento
Cuadro comparativo Algoritmos de OrdenamientoDanilo Henríquez
 
Cuadro comparativo algoritmos de ordenamiento
Cuadro comparativo algoritmos de ordenamientoCuadro comparativo algoritmos de ordenamiento
Cuadro comparativo algoritmos de ordenamientoLutzo Guzmán
 
METODOS DE ORDENACION ORDENAMIENTO Y BUSQUEDA (ALGORITMOS)
METODOS DE ORDENACION ORDENAMIENTO Y BUSQUEDA (ALGORITMOS)METODOS DE ORDENACION ORDENAMIENTO Y BUSQUEDA (ALGORITMOS)
METODOS DE ORDENACION ORDENAMIENTO Y BUSQUEDA (ALGORITMOS)Fuerza Auriazul
 
Metodos de ordenamiento
Metodos de ordenamientoMetodos de ordenamiento
Metodos de ordenamientoLalo Chooper
 
Como hacer introduccion
Como hacer introduccionComo hacer introduccion
Como hacer introduccionortizximena
 
A Guide to SlideShare Analytics - Excerpts from Hubspot's Step by Step Guide ...
A Guide to SlideShare Analytics - Excerpts from Hubspot's Step by Step Guide ...A Guide to SlideShare Analytics - Excerpts from Hubspot's Step by Step Guide ...
A Guide to SlideShare Analytics - Excerpts from Hubspot's Step by Step Guide ...SlideShare
 

Destacado (9)

Complejidad de los algoritmos
Complejidad de los algoritmosComplejidad de los algoritmos
Complejidad de los algoritmos
 
Cuadro comparativo quicksort
Cuadro comparativo quicksortCuadro comparativo quicksort
Cuadro comparativo quicksort
 
Cuadro comparativo Algoritmos de Ordenamiento
Cuadro comparativo Algoritmos de OrdenamientoCuadro comparativo Algoritmos de Ordenamiento
Cuadro comparativo Algoritmos de Ordenamiento
 
Cuadro comparativo algoritmos de ordenamiento
Cuadro comparativo algoritmos de ordenamientoCuadro comparativo algoritmos de ordenamiento
Cuadro comparativo algoritmos de ordenamiento
 
METODOS DE ORDENACION ORDENAMIENTO Y BUSQUEDA (ALGORITMOS)
METODOS DE ORDENACION ORDENAMIENTO Y BUSQUEDA (ALGORITMOS)METODOS DE ORDENACION ORDENAMIENTO Y BUSQUEDA (ALGORITMOS)
METODOS DE ORDENACION ORDENAMIENTO Y BUSQUEDA (ALGORITMOS)
 
Metodos de ordenamiento
Metodos de ordenamientoMetodos de ordenamiento
Metodos de ordenamiento
 
Complejidad de los Algoritmos
Complejidad de los AlgoritmosComplejidad de los Algoritmos
Complejidad de los Algoritmos
 
Como hacer introduccion
Como hacer introduccionComo hacer introduccion
Como hacer introduccion
 
A Guide to SlideShare Analytics - Excerpts from Hubspot's Step by Step Guide ...
A Guide to SlideShare Analytics - Excerpts from Hubspot's Step by Step Guide ...A Guide to SlideShare Analytics - Excerpts from Hubspot's Step by Step Guide ...
A Guide to SlideShare Analytics - Excerpts from Hubspot's Step by Step Guide ...
 

Similar a Algoritmos de búsqueda

Algoritmos de busqueda - hash truncamiento
Algoritmos de busqueda - hash truncamientoAlgoritmos de busqueda - hash truncamiento
Algoritmos de busqueda - hash truncamientoLutzo Guzmán
 
Hash mitad al cuadrado pdf
Hash mitad al cuadrado pdfHash mitad al cuadrado pdf
Hash mitad al cuadrado pdfCarlos Carriel
 
Documento de Busqueda Binaria
Documento de Busqueda BinariaDocumento de Busqueda Binaria
Documento de Busqueda BinariaSanTy BizZle
 
Analisis busquedas !
Analisis busquedas !Analisis busquedas !
Analisis busquedas !Jose Rios
 
método de búsqueda Truncamiento
método de búsqueda Truncamientométodo de búsqueda Truncamiento
método de búsqueda TruncamientoCristopher Blum
 
Ordenacion y busqueda
Ordenacion y busquedaOrdenacion y busqueda
Ordenacion y busquedaIrvingMoran4
 
Algoritmo, Ordenacion y Búsqueda
Algoritmo, Ordenacion y BúsquedaAlgoritmo, Ordenacion y Búsqueda
Algoritmo, Ordenacion y BúsquedaJavier Alvarez
 
Manejo de Estructura de Datos, Tipos, Beneficios
Manejo de Estructura de Datos, Tipos, BeneficiosManejo de Estructura de Datos, Tipos, Beneficios
Manejo de Estructura de Datos, Tipos, Beneficiosejosue23
 
Aritmética Modular
Aritmética ModularAritmética Modular
Aritmética Modularvvillegass
 
Informe técnico - Métodos de búsqueda Unidad 6 (Rubí Verónica)
Informe técnico - Métodos de búsqueda Unidad 6 (Rubí Verónica)Informe técnico - Métodos de búsqueda Unidad 6 (Rubí Verónica)
Informe técnico - Métodos de búsqueda Unidad 6 (Rubí Verónica)Rubi Veronica Chimal Cuxin
 
Investigacion ed (pseudocodigo, algoritmo, listas, colas, arboles)
Investigacion ed (pseudocodigo, algoritmo, listas, colas, arboles)Investigacion ed (pseudocodigo, algoritmo, listas, colas, arboles)
Investigacion ed (pseudocodigo, algoritmo, listas, colas, arboles)Eli Diaz
 
Metodos de Búsqueda
Metodos de BúsquedaMetodos de Búsqueda
Metodos de BúsquedaPedro Avaria
 

Similar a Algoritmos de búsqueda (20)

Algoritmos de busqueda - hash truncamiento
Algoritmos de busqueda - hash truncamientoAlgoritmos de busqueda - hash truncamiento
Algoritmos de busqueda - hash truncamiento
 
Hash mitad al cuadrado pdf
Hash mitad al cuadrado pdfHash mitad al cuadrado pdf
Hash mitad al cuadrado pdf
 
Hash mitad al cuadrado pdf
Hash mitad al cuadrado pdfHash mitad al cuadrado pdf
Hash mitad al cuadrado pdf
 
Documento de Busqueda Binaria
Documento de Busqueda BinariaDocumento de Busqueda Binaria
Documento de Busqueda Binaria
 
Busqueda de datos
Busqueda de datosBusqueda de datos
Busqueda de datos
 
Analisis busquedas !
Analisis busquedas !Analisis busquedas !
Analisis busquedas !
 
método de búsqueda Truncamiento
método de búsqueda Truncamientométodo de búsqueda Truncamiento
método de búsqueda Truncamiento
 
Informe insercion
Informe insercionInforme insercion
Informe insercion
 
Ordenacion y busqueda
Ordenacion y busquedaOrdenacion y busqueda
Ordenacion y busqueda
 
Informe analisis
Informe analisisInforme analisis
Informe analisis
 
Algoritmo, Ordenacion y Búsqueda
Algoritmo, Ordenacion y BúsquedaAlgoritmo, Ordenacion y Búsqueda
Algoritmo, Ordenacion y Búsqueda
 
Manejo de Estructura de Datos, Tipos, Beneficios
Manejo de Estructura de Datos, Tipos, BeneficiosManejo de Estructura de Datos, Tipos, Beneficios
Manejo de Estructura de Datos, Tipos, Beneficios
 
Métodos de ordenamiento
Métodos de ordenamiento Métodos de ordenamiento
Métodos de ordenamiento
 
Aritmética Modular
Aritmética ModularAritmética Modular
Aritmética Modular
 
Informe aritmetica modular
Informe aritmetica modularInforme aritmetica modular
Informe aritmetica modular
 
Informe técnico - Métodos de búsqueda Unidad 6 (Rubí Verónica)
Informe técnico - Métodos de búsqueda Unidad 6 (Rubí Verónica)Informe técnico - Métodos de búsqueda Unidad 6 (Rubí Verónica)
Informe técnico - Métodos de búsqueda Unidad 6 (Rubí Verónica)
 
Investigacion ed (pseudocodigo, algoritmo, listas, colas, arboles)
Investigacion ed (pseudocodigo, algoritmo, listas, colas, arboles)Investigacion ed (pseudocodigo, algoritmo, listas, colas, arboles)
Investigacion ed (pseudocodigo, algoritmo, listas, colas, arboles)
 
2.algoritmos
2.algoritmos2.algoritmos
2.algoritmos
 
Administrador,+7.pdf
Administrador,+7.pdfAdministrador,+7.pdf
Administrador,+7.pdf
 
Metodos de Búsqueda
Metodos de BúsquedaMetodos de Búsqueda
Metodos de Búsqueda
 

Último

Seleccion de Fusibles en media tension fusibles
Seleccion de Fusibles en media tension fusiblesSeleccion de Fusibles en media tension fusibles
Seleccion de Fusibles en media tension fusiblesSaulSantiago25
 
TEXTURA Y DETERMINACION DE ROCAS SEDIMENTARIAS
TEXTURA Y DETERMINACION DE ROCAS SEDIMENTARIASTEXTURA Y DETERMINACION DE ROCAS SEDIMENTARIAS
TEXTURA Y DETERMINACION DE ROCAS SEDIMENTARIASfranzEmersonMAMANIOC
 
Manual_Identificación_Geoformas_140627.pdf
Manual_Identificación_Geoformas_140627.pdfManual_Identificación_Geoformas_140627.pdf
Manual_Identificación_Geoformas_140627.pdfedsonzav8
 
Curso Análisis Fisicoquímico y Microbiológico de Aguas -EAI - SESIÓN 5.pdf
Curso Análisis Fisicoquímico y Microbiológico de Aguas -EAI - SESIÓN 5.pdfCurso Análisis Fisicoquímico y Microbiológico de Aguas -EAI - SESIÓN 5.pdf
Curso Análisis Fisicoquímico y Microbiológico de Aguas -EAI - SESIÓN 5.pdfcesar17lavictoria
 
Una estrategia de seguridad en la nube alineada al NIST
Una estrategia de seguridad en la nube alineada al NISTUna estrategia de seguridad en la nube alineada al NIST
Una estrategia de seguridad en la nube alineada al NISTFundación YOD YOD
 
nom-028-stps-2012-nom-028-stps-2012-.pdf
nom-028-stps-2012-nom-028-stps-2012-.pdfnom-028-stps-2012-nom-028-stps-2012-.pdf
nom-028-stps-2012-nom-028-stps-2012-.pdfDiegoMadrigal21
 
ARBOL DE CAUSAS ANA INVESTIGACION DE ACC.ppt
ARBOL DE CAUSAS ANA INVESTIGACION DE ACC.pptARBOL DE CAUSAS ANA INVESTIGACION DE ACC.ppt
ARBOL DE CAUSAS ANA INVESTIGACION DE ACC.pptMarianoSanchez70
 
Reporte de simulación de flujo del agua en un volumen de control MNVA.pdf
Reporte de simulación de flujo del agua en un volumen de control MNVA.pdfReporte de simulación de flujo del agua en un volumen de control MNVA.pdf
Reporte de simulación de flujo del agua en un volumen de control MNVA.pdfMikkaelNicolae
 
ECONOMIA APLICADA SEMANA 555555555555555555.pdf
ECONOMIA APLICADA SEMANA 555555555555555555.pdfECONOMIA APLICADA SEMANA 555555555555555555.pdf
ECONOMIA APLICADA SEMANA 555555555555555555.pdffredyflores58
 
Residente de obra y sus funciones que realiza .pdf
Residente de obra y sus funciones que realiza  .pdfResidente de obra y sus funciones que realiza  .pdf
Residente de obra y sus funciones que realiza .pdfevin1703e
 
El proyecto “ITC SE Lambayeque Norte 220 kV con seccionamiento de la LT 220 kV
El proyecto “ITC SE Lambayeque Norte 220 kV con seccionamiento de la LT 220 kVEl proyecto “ITC SE Lambayeque Norte 220 kV con seccionamiento de la LT 220 kV
El proyecto “ITC SE Lambayeque Norte 220 kV con seccionamiento de la LT 220 kVSebastianPaez47
 
clases de dinamica ejercicios preuniversitarios.pdf
clases de dinamica ejercicios preuniversitarios.pdfclases de dinamica ejercicios preuniversitarios.pdf
clases de dinamica ejercicios preuniversitarios.pdfDanielaVelasquez553560
 
2. UPN PPT - SEMANA 02 GESTION DE PROYECTOS MG CHERYL QUEZADA(1).pdf
2. UPN PPT - SEMANA 02 GESTION DE PROYECTOS MG CHERYL QUEZADA(1).pdf2. UPN PPT - SEMANA 02 GESTION DE PROYECTOS MG CHERYL QUEZADA(1).pdf
2. UPN PPT - SEMANA 02 GESTION DE PROYECTOS MG CHERYL QUEZADA(1).pdfAnthonyTiclia
 
CLASe número 4 fotogrametria Y PARALAJE.pptx
CLASe número 4 fotogrametria Y PARALAJE.pptxCLASe número 4 fotogrametria Y PARALAJE.pptx
CLASe número 4 fotogrametria Y PARALAJE.pptxbingoscarlet
 
Proyecto de iluminación "guia" para proyectos de ingeniería eléctrica
Proyecto de iluminación "guia" para proyectos de ingeniería eléctricaProyecto de iluminación "guia" para proyectos de ingeniería eléctrica
Proyecto de iluminación "guia" para proyectos de ingeniería eléctricaXjoseantonio01jossed
 
TAREA 8 CORREDOR INTEROCEÁNICO DEL PAÍS.pdf
TAREA 8 CORREDOR INTEROCEÁNICO DEL PAÍS.pdfTAREA 8 CORREDOR INTEROCEÁNICO DEL PAÍS.pdf
TAREA 8 CORREDOR INTEROCEÁNICO DEL PAÍS.pdfAntonioGonzalezIzqui
 
Comite Operativo Ciberseguridad 012020.pptx
Comite Operativo Ciberseguridad 012020.pptxComite Operativo Ciberseguridad 012020.pptx
Comite Operativo Ciberseguridad 012020.pptxClaudiaPerez86192
 
Procesos-de-la-Industria-Alimentaria-Envasado-en-la-Produccion-de-Alimentos.pptx
Procesos-de-la-Industria-Alimentaria-Envasado-en-la-Produccion-de-Alimentos.pptxProcesos-de-la-Industria-Alimentaria-Envasado-en-la-Produccion-de-Alimentos.pptx
Procesos-de-la-Industria-Alimentaria-Envasado-en-la-Produccion-de-Alimentos.pptxJuanPablo452634
 
Ingeniería de Tránsito. Proyecto Geométrico de calles y carreteras, es el pro...
Ingeniería de Tránsito. Proyecto Geométrico de calles y carreteras, es el pro...Ingeniería de Tránsito. Proyecto Geométrico de calles y carreteras, es el pro...
Ingeniería de Tránsito. Proyecto Geométrico de calles y carreteras, es el pro...wvernetlopez
 
Reporte de Exportaciones de Fibra de alpaca
Reporte de Exportaciones de Fibra de alpacaReporte de Exportaciones de Fibra de alpaca
Reporte de Exportaciones de Fibra de alpacajeremiasnifla
 

Último (20)

Seleccion de Fusibles en media tension fusibles
Seleccion de Fusibles en media tension fusiblesSeleccion de Fusibles en media tension fusibles
Seleccion de Fusibles en media tension fusibles
 
TEXTURA Y DETERMINACION DE ROCAS SEDIMENTARIAS
TEXTURA Y DETERMINACION DE ROCAS SEDIMENTARIASTEXTURA Y DETERMINACION DE ROCAS SEDIMENTARIAS
TEXTURA Y DETERMINACION DE ROCAS SEDIMENTARIAS
 
Manual_Identificación_Geoformas_140627.pdf
Manual_Identificación_Geoformas_140627.pdfManual_Identificación_Geoformas_140627.pdf
Manual_Identificación_Geoformas_140627.pdf
 
Curso Análisis Fisicoquímico y Microbiológico de Aguas -EAI - SESIÓN 5.pdf
Curso Análisis Fisicoquímico y Microbiológico de Aguas -EAI - SESIÓN 5.pdfCurso Análisis Fisicoquímico y Microbiológico de Aguas -EAI - SESIÓN 5.pdf
Curso Análisis Fisicoquímico y Microbiológico de Aguas -EAI - SESIÓN 5.pdf
 
Una estrategia de seguridad en la nube alineada al NIST
Una estrategia de seguridad en la nube alineada al NISTUna estrategia de seguridad en la nube alineada al NIST
Una estrategia de seguridad en la nube alineada al NIST
 
nom-028-stps-2012-nom-028-stps-2012-.pdf
nom-028-stps-2012-nom-028-stps-2012-.pdfnom-028-stps-2012-nom-028-stps-2012-.pdf
nom-028-stps-2012-nom-028-stps-2012-.pdf
 
ARBOL DE CAUSAS ANA INVESTIGACION DE ACC.ppt
ARBOL DE CAUSAS ANA INVESTIGACION DE ACC.pptARBOL DE CAUSAS ANA INVESTIGACION DE ACC.ppt
ARBOL DE CAUSAS ANA INVESTIGACION DE ACC.ppt
 
Reporte de simulación de flujo del agua en un volumen de control MNVA.pdf
Reporte de simulación de flujo del agua en un volumen de control MNVA.pdfReporte de simulación de flujo del agua en un volumen de control MNVA.pdf
Reporte de simulación de flujo del agua en un volumen de control MNVA.pdf
 
ECONOMIA APLICADA SEMANA 555555555555555555.pdf
ECONOMIA APLICADA SEMANA 555555555555555555.pdfECONOMIA APLICADA SEMANA 555555555555555555.pdf
ECONOMIA APLICADA SEMANA 555555555555555555.pdf
 
Residente de obra y sus funciones que realiza .pdf
Residente de obra y sus funciones que realiza  .pdfResidente de obra y sus funciones que realiza  .pdf
Residente de obra y sus funciones que realiza .pdf
 
El proyecto “ITC SE Lambayeque Norte 220 kV con seccionamiento de la LT 220 kV
El proyecto “ITC SE Lambayeque Norte 220 kV con seccionamiento de la LT 220 kVEl proyecto “ITC SE Lambayeque Norte 220 kV con seccionamiento de la LT 220 kV
El proyecto “ITC SE Lambayeque Norte 220 kV con seccionamiento de la LT 220 kV
 
clases de dinamica ejercicios preuniversitarios.pdf
clases de dinamica ejercicios preuniversitarios.pdfclases de dinamica ejercicios preuniversitarios.pdf
clases de dinamica ejercicios preuniversitarios.pdf
 
2. UPN PPT - SEMANA 02 GESTION DE PROYECTOS MG CHERYL QUEZADA(1).pdf
2. UPN PPT - SEMANA 02 GESTION DE PROYECTOS MG CHERYL QUEZADA(1).pdf2. UPN PPT - SEMANA 02 GESTION DE PROYECTOS MG CHERYL QUEZADA(1).pdf
2. UPN PPT - SEMANA 02 GESTION DE PROYECTOS MG CHERYL QUEZADA(1).pdf
 
CLASe número 4 fotogrametria Y PARALAJE.pptx
CLASe número 4 fotogrametria Y PARALAJE.pptxCLASe número 4 fotogrametria Y PARALAJE.pptx
CLASe número 4 fotogrametria Y PARALAJE.pptx
 
Proyecto de iluminación "guia" para proyectos de ingeniería eléctrica
Proyecto de iluminación "guia" para proyectos de ingeniería eléctricaProyecto de iluminación "guia" para proyectos de ingeniería eléctrica
Proyecto de iluminación "guia" para proyectos de ingeniería eléctrica
 
TAREA 8 CORREDOR INTEROCEÁNICO DEL PAÍS.pdf
TAREA 8 CORREDOR INTEROCEÁNICO DEL PAÍS.pdfTAREA 8 CORREDOR INTEROCEÁNICO DEL PAÍS.pdf
TAREA 8 CORREDOR INTEROCEÁNICO DEL PAÍS.pdf
 
Comite Operativo Ciberseguridad 012020.pptx
Comite Operativo Ciberseguridad 012020.pptxComite Operativo Ciberseguridad 012020.pptx
Comite Operativo Ciberseguridad 012020.pptx
 
Procesos-de-la-Industria-Alimentaria-Envasado-en-la-Produccion-de-Alimentos.pptx
Procesos-de-la-Industria-Alimentaria-Envasado-en-la-Produccion-de-Alimentos.pptxProcesos-de-la-Industria-Alimentaria-Envasado-en-la-Produccion-de-Alimentos.pptx
Procesos-de-la-Industria-Alimentaria-Envasado-en-la-Produccion-de-Alimentos.pptx
 
Ingeniería de Tránsito. Proyecto Geométrico de calles y carreteras, es el pro...
Ingeniería de Tránsito. Proyecto Geométrico de calles y carreteras, es el pro...Ingeniería de Tránsito. Proyecto Geométrico de calles y carreteras, es el pro...
Ingeniería de Tránsito. Proyecto Geométrico de calles y carreteras, es el pro...
 
Reporte de Exportaciones de Fibra de alpaca
Reporte de Exportaciones de Fibra de alpacaReporte de Exportaciones de Fibra de alpaca
Reporte de Exportaciones de Fibra de alpaca
 

Algoritmos de búsqueda

  • 1. Algoritmos de Búsquedas “Búsqueda Lineal” Concepción-Talcahuano Ingeniería en Informática Análisis de Algoritmos Nombre Alumno (s): Nelson Silva. Paz Morales. Claudio Marín. Héctor Rifo. Nombre Profesor: Pilar Pardo. Fecha: 15/04/2014
  • 2. INDICE 1. introducción.................................................................................................... 3 2. Algoritmos de búsqueda................................................................................ 4 2.1 Búsqueda lineal........................................................................................ 4 2.1.1 Complejidad de la búsqueda lineal.................................................. 4 2.2 Búsqueda binaria ..................................................................................... 7 2.3 Búsqueda mediante transformación de claves (Hashing).................. 10 2.3.1 Truncamiento................................................................................... 10 2.3.2 Plegamiento ..................................................................................... 11 2.3.3 Aritmética modular.......................................................................... 12 2.3.4 Mitad cuadrado ................................................................................ 13 3. conclusión..................................................................................................... 14
  • 3. Página 3 1. INTRODUCCIÓN En el siguiente informe se tomará el tema de la búsqueda de datos en Algoritmos, la cual tiene múltiples opciones del manejo de datos que presentan distintos casos de éxitos, el peor, el promedio y el mejor. Además de tratar con estos casos se analizará su eficacia, eficiencia y calidad de búsqueda para cada tipo de opciones.
  • 4. Página 4 2. ALGORITMOS DE BÚSQUEDA 2.1 Búsqueda lineal La búsqueda lineal es sencilla de implementar e intuitiva. Básicamente consiste en buscar de manera secuencial un elemento, es decir, preguntar si el elemento buscado es igual al primero, segundo, tercero y así sucesivamente hasta llegar al último elemento del vector ó haber logrado encontrar dicho elemento antes de llegar al final. Si encuentra el elemento, entregara un mensaje positivo, como: "existe el elemento", además de poder entregar la posición de dicho elemento (índice). Y en caso contrario, entregara un mensaje negativo, como: "el elemento no existe". Esta búsqueda no requiere ningún requisito por parte del vector, por consiguiente no requiere que el vector este ordenado, tampoco qué sea par o impar. 2.1.1 Complejidad de la búsqueda lineal Mejor Caso: Es cuando la búsqueda termina tan pronto encuentra el elemento buscado en el array. Si tenemos suerte, puede ser que la primera posición examinada contenga el elemento que buscamos, en cuyo caso el algoritmo informará que tuvo éxito después de una sola comparación. Ejemplo: 0 1 2 3 4 5 6 7 8 9 12 32 77 8 51 63 70 24 4 39 Buscar el elemento "12" 1.-12 = 12 Fin de la búsqueda 2.-Mensaje"Elemento existe" posición 0
  • 5. Página 5 Peor Caso: Sucede cuando el elemento se encuentra en la última posición del array. Ejemplo: 0 1 2 3 4 5 6 7 8 9 12 32 77 8 51 63 70 24 4 39 Buscar el elemento "39" 1.- 12 ≠ 39 2.- 32 ≠ 39 3.- 77 ≠ 39 4.- 8 ≠ 39 5.- 51 ≠ 39 6.- 63 ≠ 39 7.- 70 ≠ 39 8.- 24 ≠ 39 9.- 4 ≠ 39 10.- 39 = 39 Fin de la búsqueda 11.- Mensaje "Elemento existe" posición 9
  • 6. Página 6 Promedio: Ocurre cuando el elemento a buscar, se encuentra en la posición de en medio (n/2). Ejemplo: 0 1 2 3 4 5 6 7 8 9 12 32 77 8 51 63 70 24 4 39 Buscar el elemento "51" 1.- 12 ≠ 39 2.- 32 ≠ 39 3.- 77 ≠ 39 4.- 8 ≠ 39 5.- 51 = 51 Fin de la búsqueda 6.- Mensaje "Elemento existe" posición 4
  • 7. Página 7 2.2 Búsqueda binaria El algoritmo de búsqueda binaria es un excelente método para buscar datos dentro de una estructura (generalmente un arreglo unidimensional). Se le da el nombre de búsqueda binaria por que el algoritmo divide en dos el arreglo, aludiendo al concepto de bit, el cual puede tener dos estados. Para este algoritmo se utiliza el concepto "Divide y vencerás". Requisito: Los datos del vector deben estar ordenados. Procedimiento: Primero se compara el elemento central del vector con el dato que se quiere buscar; si este es el elemento buscado, entonces la búsqueda se termina. Si el elemento no es el que se busca, se comprueba si el elemento a buscar es mayor o menor al elemento central y si está en la primera o segunda mitad del vector. Si el elemento es menor, se vuelve a tomar el elemento central de la primera mitad y la otra se elimina. Si el elemento es mayor, se toma el elemento central de la segunda mitad y la otra se elimina. Este proceso se repite hasta que se encuentre el elemento que se busca.
  • 8. Página 8 Ejemplo: Se puede aplicar en listas lineales como en arboles binarios de búsqueda. Se debe conocer el número de registros. Mejor caso: La búsqueda binaria requiere solo una comparación; esto significa que su tiempo de ejecución óptimo no depende de la cantidad de datos. El esfuerzo mínimo es 1. Caso promedio: El promedio 1/2log2n.
  • 9. Página 9 Peor caso: El algoritmo de búsqueda binaria progresivamente va disminuyendo el número de elementos sobre el que se realiza la búsqueda a la mitad. Así, tras log2n divisiones se habrá localizado el elemento o se tendrá la seguridad de que no estaba. El esfuerzo máximo para este algoritmo es log2n.
  • 10. Página 10 2.3 Búsqueda mediante transformación de claves (Hashing) Permite en aumentar la velocidad de búsqueda sin necesidad de tener lo elementos ordenados. Consiste en transformar claves numéricas o alfanuméricas en direcciones o índices de un vector. Existen 4 métodos de transformación de claves:  Truncamiento  Plegamiento  Aritmética modular  Mitad del cuadrado 2.3.1 Truncamiento Este método ignora parte de la clave y se deja la parte restante como índice. Para el caso de que la clave sea de 8 dígitos y tenga 1000 posiciones, entonces se toma el 1°,2° y 5° digito de izquierda a derecha. Ejemplos: Vector: 1000 posiciones Tamaño clave: 8 Elementos: 1,2 y 5 N° Elementos Clave H(clave)= 481 0 1 2 3 4 5 6 7 7 4 8 7 2 1 9 5
  • 11. Página 11 Vector: 800 posiciones Tamaño clave: 8 Elementos: 1,5 y 3 N° Elementos Clave Si H(clave)>vector H(clave)=834 834 – 800 = 34 2.3.2 Plegamiento Consiste en dividir la clave en diferentes partes y combinarlas para obtener el índice. Todas las partes a excepción de la última debe obtener el mismo número de dígitos que el tamaño del vector. Vector: 100 posiciones Clave: 52136984 H(clave)= 521+369+84 H(clave)= 974 974 = 74 0 1 2 3 4 5 6 7 9 8 2 4 1 3 5 7 521 369 84 Se trunca Se trunca
  • 12. Página 12 2.3.3 Aritmética modular Consiste en dividir la clave por el número de posiciones del vector donde el resultado es el resto de la división. H(x)= x MOD m x= clave m= tamaño del arreglo Ejemplo: Vector: 100 posiciones Clave: 43276581 H(clave)=43276581 MOD 100 H(clave)=81
  • 13. Página 13 2.3.4 Mitad cuadrado Consiste en calcular el cuadrado de la clave y tomar los dígitos centrales de este resultado. H(x)=X^2 x= clave Ejemplo: Vector: 100 posiciones Clave: 5478 H(clave)=5478 * 5478 N° Elementos Clave Elementos centrales =3 y 4 H(clave)= 08 0 1 2 3 4 5 6 7 3 0 0 0 8 4 8 4
  • 14. Página 14 3. CONCLUSIÓN Dada la investigación, se visualizan distintos datos, ordenados de tal manera que los algoritmos de búsqueda son ideales para distintos casos. Los métodos aprendidos, son los siguientes:  Búsqueda lineal  Búsqueda binaria  Búsqueda mediante transformación de claves  Truncamiento  Plegamiento  Aritmética modular  Mitad cuadrado Cada uno de ellos muestra desarrollos y son utilizados como métodos de orden y búsqueda de datos. Como mayor parte, se utiliza en 2 puntos. 1. Determinar si el elemento buscado se encuentra en el conjunto en el que se busca. 2. Si el elemento está en el conjunto, hallar la posición en la que se encuentra.