Está en la página 1de 3

#include <stdio.

h>

#include <time.h>

#include <stdlib.h>

#define N 10

int n=N;

int A[N];

//definicion de las funciones de dos algoritmos de busqueda

int lSearch(int[], int, int); //(Vector, Tamanioo, Valor Buscado)

void burbujaS(int[], int); //algoritmo de ordenamiento

int binSearch(int[], int, int, int); //(Vector, Inicio, Fin, Valor Buscado)

int indSearch(int[], int, int); //(Vector, Tamanioo, Valor Buscado)

int intSearch(int[], int, int, int); //(Vector, Inicio, Fin, Valor Buscado)

int vB=3;

int main(void){

int i;

srand(time(NULL));

for(i=0; i<N; i++){

A[i]=rand()%11;

printf("%d ", A[i]);

burbujaS(A,n);

printf("\nArreglo ordenado: \n");

for(i=0; i<N; i++)


printf("%d ", A[i]);

//int indice=lSearch(A,n,vB);

int indice=binSearch(A, 0, n, vB);

if(indice!=-1)

printf("\nEl valor esta en: %d", indice);

else

printf("\nEl valor no se encuentra en la lista");

return 0;

int lSearch(int A[], int n, int vB){

int i;

for(i=0; i<n; i++)

if(A[i]==vB)

return i;

return -1;

void burbujaS(int A[], int n){

int swap, i, j;

for(i=0; i<n; i++)

for(j=0; j<n-1; j++)


if(A[j]>A[j+1])

A[j]=(A[j]*A[j+1])/(A[j+1]=A[j]);//hace el intercambio

return;

int binSearch(int A[], int inicio, int fin, int vB){

while(inicio>=fin){

int mid=inicio+(fin-inicio)/2;

if(A[mid]==vB)

return mid;

else if(vB>A[mid])

inicio=mid+1;

else

fin=mid-1;

return mid;

También podría gustarte