Algoritmia - algoritmos

 
Vista:

algoritmos

Publicado por edgar (1 intervención) el 11/01/2009 05:00:20
HOLA

ME PODRIAN AYUDAR CON UN ALGORITMO

UN ALGORITMO QUE APLIQUE UN METO DE BUSQUEDA PARA ENCONTRAR UN NUMERO EN UN VECTOR ORDENADO DE 10 ELEMENTOS.

POR FABOR ES URGENTE SE LO AGRADECERE MUCHO
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:algoritmos

Publicado por powers (1 intervención) el 13/01/2009 00:20:48
Hola

El algoritmo que necesitas es sencillo.

La especificación es:

Precondiciones: x es el elemento a buscar, v es un vector ordenado y n es el tamaño del vector
(En tu caso se puede prescendir de n pues sabemos que el tamaño siempre será 10, aún así veo
mejor describir el algoritmo que trata el problema general)

Postcondiciones: devuelve la posicion en la que se encuentra el elemento x dentro del vector ordenado v.
Si x no se encuentra en v devuelve n+1

En pseudocódigo sería así:

entero busqueda (tElto x, vec_tElto v, entero n)
{
entero i
i <- 1
mientras (i < n && x < v [i])
i <- i +1
si (v[i] = x) entonces
devolver i
sino
devolver n+1
}

En C sería así:

int busqueda (tElto x, tElto* v, int n)
{
int i = 0;
while (i < n -1 && x < v [i] )
i ++;
if (v[i] == x)
return i;
else
return n+1;
}

Espero haberte servido de ayuda.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar