Saltar Buscar Implementación en C ++

En este artículo, vamos a aprender lo que es búsqueda Jump y cómo implementarlo mediante el programa C ++ ?

búsqueda Jump es un algoritmo de búsqueda de eficiencia y sus mentiras entre búsqueda lineal y búsqueda binaria.

En este sentido, búsqueda o buscar un elemento en particular con la ayuda de medios de tamaño de etapa buscamos un elemento en particular por saltar o saltar el entre valores de acuerdo con el tamaño del paso dado por el usuario si todavía no se encuentra un elemento particular entonces este algoritmo de búsqueda seguirá lineal simple de los elementos anteriores.

class la aplicación de estos elementos de algoritmo debe estar en los medios de orden clasificado de forma ascendente o descendente .

Complejidad:

    
sqrt(n) or (√n).
Sqrt = SquareRoot.

Implementación de Salto Buscar usando C ++

//Implementation of jump search using c++
#include <iostream>
#include <vector>
#include <cmath>
using namespace std;
int jumpSearchProg(vector <int> arr, int noToSearch, int ArrayLim)
{
int previous = 0;
int step = sqrt(ArrayLim);
//Step to skip elements for jumping
while (arr[min(step,ArrayLim)-1] < noToSearch)
{
previous = step;
step += sqrt(ArrayLim);
if(previous >= ArrayLim) return -1;
}

while (arr[previous] < noToSearch)
{
previous++;

if (previous == min(step, ArrayLim)) return -1;
}
// if we found the element then
if (arr[previous] == noToSearch)
return previous;
return -1;
}
//Start of main
int main()
{
int n,NoToSr;
cout<<"Enter the length of the array:"<<endl;
cin>>n;
vector<int> arr(n);
cout<<"Enter the elements of the array"<<endl;
for(int i=0;i<n;i++)
{
cin>>arr[i];
}
cout<<"Enter the number to be searched:"<<endl;
cin>>NoToSr;
//function calling
int result = jumpSearchProg(arr, NoToSr, n);
//displayin foud number
cout<<"Number = "<<NoToSr<<"is found at index = "<<result<<endl;
return 0;
}

salida

Jump Search Implementation using C++ - 4


Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *