domingo, 12 de agosto de 2012

busqueda binaria normal

    private void bbi_Click(object sender, EventArgs e)
        {
            bool sw = true;
          
            //Comienza Busqueda Binaria
            int LimiteInferior = 0;
            int LimiteSuperior = vectorOrdenado.Length;
            int Medio = (LimiteSuperior - LimiteInferior) / 2;
            for(int i = 0;i< vectorOrdenado.Length;i++)
            {
                if (vectorOrdenado[i].CompareTo(datoparabuscar.Text)<0)
                {
                    LimiteSuperior= Medio;
                    Medio = (LimiteSuperior - LimiteInferior) / 2;
                }
                if (vectorOrdenado[i].CompareTo(datoparabuscar.Text) > 0)
                {
                    LimiteInferior = Medio;
                    Medio = (LimiteSuperior - LimiteInferior) / 2;
                }
                if (vectorOrdenado[i].CompareTo(datoparabuscar.Text) == 0)
                {
                    sw = false;
                    MessageBox.Show("El dato buscado se encuentra en la posicion "+i );
                  
                }
              
                  
            }
            if (sw)
                MessageBox.Show("El dato buscado no se encuentra  ");

        }

        private void button2_Click(object sender, EventArgs e)
        {
          busquedaRecursiva(vectorOrdenado, vectorOrdenado.Length,0).ToString();

            if (!swiche)
                MessageBox.Show("no existe tal dato");

        }

2 comentarios: