Metodos De Busqueda Y Ordenamiento

Páginas: 8 (1984 palabras) Publicado: 10 de diciembre de 2012
//Busquedas



private function buscar(e:MouseEvent):void {
switch (int(cmb_Busq.value) )
{
case 1: busquedaConBandera(); break;
case 2: busquedaBinaria(); break;
case 3: busquedaSecuencial(); break;
default : mensaje_txt.text = "ERROR"
}

busq_txt.text = cmb_Busq.text;
cmb_Busq.selectedIndex = 0;
}


private functionbusquedaSecuencial():void {
var encontrado:Boolean = false;
var mensaje:String ="";

for (var i:int = 0; i < _myArray.length; i++) {
if (getmyArray(i) == Number(buscar_txt.text)) {
encontrado = true;
mensaje = mensaje + "\n" + buscar_txt.text + ' encontrado en la pos '+ i
}
}

if (!encontrado){
mensaje_txt.text = buscar_txt.text +' No Encontrado '}
else {
mensaje_txt.text = mensaje;
}
}

private function busquedaBinaria():void {

var dato:Number = Number(buscar_txt.text);
var _liminf:int = 0;
var _limsup:int = _myArray.length - 1 ;
var _central:int;
var _repetir:int = 0;
var _encontrado:Boolean = false;

while (_encontrado == false && _liminf <= _limsup){

if (dato == getmyArray(_liminf)){
_encontrado = true;
_central = _liminf;
}

_liminf = _liminf + 1;
}

while (_liminf <= _limsup)
{
if (dato == getmyArray(_liminf))
{
_repetir = _repetir + 1;
}
_liminf = _liminf + 1;
}

if (_encontrado == true)
mensaje_txt.text = String("Elelemento " + dato + " se encontro en la posicion: " + _central + " y se repite " + _repetir + " veces más");
else
mensaje_txt.text = String("El elemento " + dato + " no existe en el arreglo");
}


private function busquedaConBandera():void {
if (buscabandera(Number(buscar_txt.text))) {
visualizabandera()
}
else
{
mensaje_txt.text = "El numero"+buscar_txt.text+" no encontrado";
}


num_txt.text = "";
num_txt.setFocus()
}

public function buscabandera(num:Number):Boolean {

var bandera:Boolean
for (var pos:int = 0; (pos <= _myArray.length - 1) && (bandera == false) ; pos++)
{
if (num == getmyArray(pos)) //si el valor que hay en el array es igual al digitado
{
aux = pos;bandera = true;
}
}
return bandera
}

private function visualizabandera():void { mensaje_txt.text = "El numero " + num_txt.text + " esta en la posicion " + aux; }



//Ordenamientos



private function ordenar(e:MouseEvent):void
{
switch (int(cmb_Ord.value) )
{
case 1: OrdShell(_myArray); break;
case 2:OrdQuickSort(_myArray,0,_myArray.length); break;
case 3: OrdSeleccion(); break;
case 4: OrdInsercion(); break;
case 5: OrdBorbuja(); break;
default : mensaje_txt.text = "ERROR"
}
mostrar(_myArray, ListOrd);
ord_txt.text = cmb_Ord.text;
cmb_Ord.selectedIndex = 0;
}

private function OrdBorbuja():void
{
var aux:int;
for (var i:int = 0; i <= (_myArray.length - 1) - 1 ; i++)for (var j:int = 0; j <= (_myArray.length - 1) - 1 ; j++)
if (getmyArray(j) > (getmyArray(j + 1))) {
aux = getmyArray (j);
setmyArray(getmyArray(j + 1), j);
setmyArray(aux, j + 1 );
}

}


private function OrdInsercion():void
{
var dato:int;
var aux:int;
var pass:Boolean;
for (var i:int = 1; i < _myArray.length; i++)
{dato = getmyArray(i);
aux = i - 1;
pass = false;
while ((pass == false) && (aux >= 0))
{
if (dato < getmyArray(aux))
{
setmyArray(getmyArray(aux),aux+1);
aux = aux - 1;
}
else
{
pass = true;
}

}

setmyArray(dato,aux + 1);
}
}

private function OrdSeleccion():void...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • METODOS DE ORDENAMIENTO Y BUSQUEDA 1
  • Metodos de ordenamiento y busqueda
  • Metodos de ordenamiento y busqueda en c++
  • Metodos de Ordenamiento y busqueda
  • Metodo de ordenamiento y de busqueda
  • metodos de ordenamiento y busqueda en java
  • Métodos de ordenamiento y búsqueda
  • Metodos de ordenamiento y busqueda

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS