Foros del Web » Programando para Internet » PHP »

ciclo burbuja

Estas en el tema de ciclo burbuja en el foro de PHP en Foros del Web. Holaaaa estoy hallando el menor dentro de un arreglo pero tengo problemas pues me devuelve el menor pero cuadno tengo dos menores osea dos valores ...
  #1 (permalink)  
Antiguo 06/10/2008, 11:59
Avatar de mahia  
Fecha de Ingreso: enero-2008
Ubicación: La Tierra
Mensajes: 69
Antigüedad: 16 años, 9 meses
Puntos: 0
ciclo burbuja

Holaaaa estoy hallando el menor dentro de un arreglo pero tengo problemas pues me devuelve el menor pero cuadno tengo dos menores osea dos valores menores y por supuesto iguales no me los devueve.. por ejemplo tengo una lista mes y otro cantidad_por_mes y nada que me devuelva el mes que menor cantidad tuvo pero que en mi BD tegno dos meses con iguales cantidades y da la casualidad que son los menores... me dijeron que hiciera un ciclo burbuja y que al final agregara una condicion .. no entendi bien ..
gracias por la ayuda.
M.
  #2 (permalink)  
Antiguo 06/10/2008, 12:03
Avatar de the_web_saint  
Fecha de Ingreso: mayo-2008
Ubicación: localhost/tierra/america/panama
Mensajes: 1.229
Antigüedad: 16 años, 6 meses
Puntos: 43
Respuesta: ciclo burbuja

A ver si entendi.
Quieres buscar el menor valor de un arrego, pero si hay más de un elemento que es menor(por ser iguale y menores que los demás), quieres saberlo tambien??
es decir si tienes(1,6,8,3,4,6,9,1), quieres que te devuelva el primer valor y el ultimo??

Saludos
__________________
..::The Saint::..
El pesimista se queja del viento; el optimista espera que cambie; el realista ajusta las velas.
  #3 (permalink)  
Antiguo 06/10/2008, 12:09
Avatar de mahia  
Fecha de Ingreso: enero-2008
Ubicación: La Tierra
Mensajes: 69
Antigüedad: 16 años, 9 meses
Puntos: 0
Respuesta: ciclo burbuja

exactoooop
  #4 (permalink)  
Antiguo 06/10/2008, 12:32
Avatar de the_web_saint  
Fecha de Ingreso: mayo-2008
Ubicación: localhost/tierra/america/panama
Mensajes: 1.229
Antigüedad: 16 años, 6 meses
Puntos: 43
Respuesta: ciclo burbuja

Esto te puede ayudar
Código PHP:
<?php
for($i=0$i<count(arreglo)-1$i++)
{
    for(
$j=i+1$j<count(arreglo); $j++)
    {
        if(
arreglo[$i]<arreglo[$j])
        {
$menor=arreglo[$i]; $elem=$i;}
        else
        {
$menor=arreglo[$j]; $elem=$j;}
    }
}
$k=0;
for(
$i=0$i<count(arreglo); $i++)
{
    if(
$arreglo[$i]==$menor && $i!=$elem)
    {
        
$menores[$k]=$i;//Arreglo tendras la posicion de los elementos que son iguales al menor
        
$k++;
    }
    
}
?>
No lo he probado, pero lo que hago es buscar el menor de todos, luego reviso si hay valores identicos a mi menor. Si sucede esto, guardo su posicion del arreglo en otro array(Guardo la posicion, porque el valor es el mismo que el que tiene la variable menor).
Bueno, espero te sirva.

Salu2
__________________
..::The Saint::..
El pesimista se queja del viento; el optimista espera que cambie; el realista ajusta las velas.
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 22:37.