ıllı Internet y Tecnologías de la Información (2018)

internet, Hosting, dominios, seo, antivirus, banco de imágenes, páginas web, tiendas online

[Enciclopedia Online Gratuita] Diccionario de Internet y Tecnologías de la Información y la Comunicación (TIC):

ıllı Algoritmo de búsqueda : que es, definición y significado, descargar videos y fotos.

videos internet

salud  ıllı Algoritmo de búsqueda : que es, definición y significado, descargar videos y fotos.  


Un inconveniente propio de la Inteligencia Artificial consiste en buscar un estado específico entre un conjunto determinado, al que se le llama espacio de estados. Imaginemos, por servirnos de un ejemplo, una habitación con baldosines en la que hay un libro. Un robot se quiere mover por la habitación con la intención de llegar a dicho libro. ¿De qué forma lo va a hacer? Es en este punto donde entran en juego las estrategias y los algoritmos de busca.


Cuando el sistema agente (en un caso así, el robot) tiene algún género de información del medio, se usan técnicas de buscas informadas; no obstante, si carece de conocimiento alguno, se van a deber emplear algoritmos de busca no informadas. En nuestro ejemplo, y para este último caso, podemos imaginar un robot que no tenga ningún género de visión artificial, que solamente sea capaz de moverse en horizontal o bien vertical de un baldosín a otro y advertir si en el baldosín se encuentra el libro.


De esta forma, los algoritmos de busca pueden ser:


Se usa cuando el vector en el que deseamos determinar la existencia de un factor está anteriormente ordenado. Este algoritmo reduce el tiempo de busca sensiblemente, puesto que reduce exponencialmente el número de iteraciones precisas. En el peor caso el número máximo de comparaciones es ?log2?n+1?undefined, donde nundefined es el número de los elementos en el vector. Por servirnos de un ejemplo, en uno conteniendo 50.000.000 elementos, el algoritmo efectúa como máximo veintiseis comparaciones.


Para incorporar este algoritmo se equipara el factor a buscar con un factor cualquiera del vector (en general el factor central): si el valor de este es mayor que el del elemento buscado se repite el procedimiento en la una parte del vector que va desde el principio de este hasta el factor tomado, de lo contrario se toma la una parte del vector que va desde el factor tomado hasta el final. De esta forma conseguimos intervalos poco a poco más pequeños, hasta el momento en que se consiga un intervalo indivisible. Si el factor no se halla en este último entonces se infiere que el factor buscado no se halla en todo el vector.


A continuación se presenta el pseudocódigo del algoritmo, tomando como elemento inicial el factor central del vector.

Datos de entrada: vec: vector en el que se quiere buscar el dato tam: tamaño del vector. Los subíndices válidos van desde 0 hasta tam-1 inclusive. dato: elemento que se quiere buscar.Variables centro: subíndice central del intervalo inf: límite inferior del intervalo sup: límite superior del intervaloinf = 0sup = tam-1Mientras inf <= sup: centro = ((sup - inf) / dos) + inf // División entera: se trunca la fracción Si vec == dato devolver auténtico y/o pues, de lo contrario: Si dato < vec entonces: sup = centro - 1 En caso contrario: inf = centro + 1Fin (Mientras que)Devolver Falso
intbusquedaBinaria(intvector,intn,intdato)undefined
Implementación recursiva en C++
#include<vector>boolbusqueda_dicotomica(constvector<int>&v,intprincipio,intfin,int&x)undefined/*undefined*/
Implementación recursiva en Python
defbusquedaBinaria(numeros,inicio,fin,elemento):if(inicio==fin):returnnumeros==elementocentro=((fin-comienzo)//2)+inicioif(elemento<numeros):returnbusquedaBinaria(numeros,inicio,centro-1,elemento)elif(elemento>numeros):returnbusquedaBinaria(numeros,centro+1,fin,elemento)else:returnTruedefbusqueda(numeros,elemento):if(numeros==None)or(numeros==):returnFalseelse:returnbusquedaBinaria(numeros,0,len(numeros)-1,elemento)
Implementación recursiva en Python3
defbin(a,x,low,hi):ans=-1iflow==hi:ans=-1else:mid=(low+((hi-low)//2))ifx<a:ans=bin(a,x,low,mid)elifx>a:ans=bin(a,x,mid+1,hi)else:ans=midreturnans# De este modo se hace el llamado: print(bin(Lista, numero_a_buscar, 0, len(Lista)))# Regresa el índice que coincide con 'numero_a_buscar', si no está regresa -1# Tiempo: (log n)
Implementación iterativa en Python3
defbin(a,c):ans=-1ifa>=c:ans=-1else:low,hi=0,len(a)whilelow+1!=hi:mid=low+((hi-low)//2)ifa<c:low=midelse:hi=midans=lowreturnans# De esta forma se hace el llamado: print(bin(lista(), numero_a_buscar))# Regresa el índice que coincide con 'numero_a_buscar', si no está regresa -1# Tiempo: (log n)


  ELIGE TU TEMA DE INTERÉS: 


autoayuda.es   Internet y Tecnologias 

Está aquí: Inicio > [ INTERNET ] > ıllı Algoritmo de búsqueda : que es, definición y significado, descargar videos y fotos.

Las cookies nos permiten ofrecer nuestros servicios. Al utilizar nuestros servicios, aceptas el uso que hacemos de las cookies. Ver políticas