Foros del Web » Programación para mayores de 30 ;) » C/C++ »

Busqueda Secuencial Y Binaria En Un Array Ordenado

Estas en el tema de Busqueda Secuencial Y Binaria En Un Array Ordenado en el foro de C/C++ en Foros del Web. Hola amigos, estuve buscando los codigos de estos dos tipos de busquedas en lenguaje "C", pero encontre muchas y casi distintas y la mayoria no ...
  #1 (permalink)  
Antiguo 24/09/2012, 15:29
 
Fecha de Ingreso: enero-2007
Mensajes: 20
Antigüedad: 17 años, 3 meses
Puntos: 0
Busqueda Secuencial Y Binaria En Un Array Ordenado

Hola amigos, estuve buscando los codigos de estos dos tipos de busquedas en lenguaje "C", pero encontre muchas y casi distintas y la mayoria no se ejecutaban bien.
Si alguien lo tuviera en sus archivos o por ahi, alguno de esas dos busquedas y me podria poner los codigos, les agradeceria mucho pero en lenguaje "C"

Bueno encontre este codigo de la busqueda secuencial o lineal, en C:

#include<stdio.h>
#include<stdlib.h>
#define DIM 10

int vector[dim],i,x;
printf("\nInsertar un numero para buscar:");
scanf("%d",&x);
for(i=0;i<dim;i++)
if(vector[i]==x)
return i;
return -1;

Lo ejecute pero no me viene nada.. creo que lo que me equivoco es en el return pero no se como cambiarlo.
Les agradesco......
  #2 (permalink)  
Antiguo 24/09/2012, 20:51
 
Fecha de Ingreso: diciembre-2011
Ubicación: CABA
Mensajes: 433
Antigüedad: 12 años, 4 meses
Puntos: 94
Respuesta: Busqueda Secuencial Y Binaria En Un Array Ordenado

Hola! como no subiste un programa completo, lo unico que puedo decir que esta mal es que usas dim(en minusculas) en vez de DIM... subi todo el codigo para ayudarte mejor


Cita:
pero encontre muchas y casi distintas
es verdad que muchos algoritmos parecieran que son "distintos", pero la logica en todos es lo mismo: en la secuencial recorre el arreglo posicion x posicion, y en la binaria divide a la mitad constantemente el arreglo hasta encontrar el elemento buscado


Saludos
  #3 (permalink)  
Antiguo 24/09/2012, 23:53
 
Fecha de Ingreso: enero-2007
Mensajes: 20
Antigüedad: 17 años, 3 meses
Puntos: 0
Respuesta: Busqueda Secuencial Y Binaria En Un Array Ordenado

Cita:
Iniciado por cesar_casla Ver Mensaje
Hola! como no subiste un programa completo

No subi el programa completo porque solo me interesa los algoritmos de ambas busquedas que se puedan adaptar a cualquier programa...
sobre el DIM tienes razon...pero porque no me ejecuta bien?..lo unico que pienso que pueda estar mal es en los return pero nose cual seria el cambio porque lo copie de una pagina..
  #4 (permalink)  
Antiguo 25/09/2012, 06:12
 
Fecha de Ingreso: diciembre-2011
Ubicación: Crespo - Entre Rios
Mensajes: 155
Antigüedad: 12 años, 4 meses
Puntos: 25
Respuesta: Busqueda Secuencial Y Binaria En Un Array Ordenado

hay que analizar un poco el codigo que pusiste:

Código C:
Ver original
  1. #include<stdio.h>
  2. #include<stdlib.h>
  3. #define DIM 10
  4.  
  5. int vector[dim],i,x;
  6. printf("\nInsertar un numero para buscar:");
  7. scanf("%d",&x);
  8. for(i=0;i<dim;i++)
  9. if(vector[i]==x)
  10. return i;
  11. return -1

tiene los siguientes problemas:

1- te falta la funcion main().

2- como dijo cesar_calsa, hay que cambiar dim por DIM.

3- para realizar una busqueda dentro del arreglo, primeramente hay que llenarlo con datos.

Código C++:
Ver original
  1. #include <iostream>
  2. #define DIM 10
  3. #include <cstdio>
  4. using namespace std;
  5.  
  6. int main(int argc, char *argv[]) {
  7.     int vector[DIM],i,x;
  8.    
  9.     //se completa el vector con datos
  10.     for (i=0; i<DIM; i++)
  11.         vector[i]= i+1;
  12.    
  13.     printf("\nInsertar un numero del 1 al 10 para buscar:");
  14.     scanf("%d",&x);
  15.    
  16.     //se busca de forma secuencial y se muestra la posicion en la
  17.     //que se encuentra el numero, comenzando desde 0
  18.     for(i=0;i<DIM;i++)
  19.         if(vector[i]==x){
  20.             printf("%s", "\nEL numero se encuentra en la posicion ");
  21.             printf("%d", i);
  22.         }
  23.    
  24.     return 0;
  25. }


para la busqueda binaria te dejo un link que esta bien explicado y con ejemplo

http://codigomaldito.blogspot.com.ar...a-binaria.html

saludos
  #5 (permalink)  
Antiguo 25/09/2012, 14:32
 
Fecha de Ingreso: enero-2007
Mensajes: 20
Antigüedad: 17 años, 3 meses
Puntos: 0
Respuesta: Busqueda Secuencial Y Binaria En Un Array Ordenado

te agradesco por poner el algoritmo...pero lo necesitaba en C y tu lo pusiste C++..si pudieras ponerlo en C. ..te agradeceria mucho...

Etiquetas: int, ordenado, busquedas
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 01:22.