Foros del Web » Programación para mayores de 30 ;) » Programación General »

ordenar varios numeros

Estas en el tema de ordenar varios numeros en el foro de Programación General en Foros del Web. hola... tengo una duda de como hacer un programa que ordene numeros. tengo que pedir que me ingrese una serie de numeros de un solo ...
  #1 (permalink)  
Antiguo 22/05/2010, 03:46
 
Fecha de Ingreso: mayo-2010
Mensajes: 4
Antigüedad: 13 años, 11 meses
Puntos: 0
ordenar varios numeros

hola... tengo una duda de como hacer un programa que ordene numeros.
tengo que pedir que me ingrese una serie de numeros de un solo dijito no importando que esten repetidos y ordenarlos con QUICKSORT e estado buscando y e encontrado esto en wikipededia

h t t p://es.wikipedia.org/wiki/Quicksort

busque el codigo que le entendiera mas y solo encontre el de java


//Recibe un vector de enteros y el índice del primer y último elemento válido del mismo

void ordenarQuicksort(int[] vector, int primero, int ultimo){
int i=primero, j=ultimo;
int pivote=vector[(primero + ultimo) / 2];
int auxiliar;

do{
while(vector[i]<pivote) i++;
while(vector[j]>pivote) j--;

if (i<=j){
auxiliar=vector[j];
vector[j]=vector[i];
vector[i]=auxiliar;
i++;
j--;
}

} while (i<=j);

if(primero<j) ordenarQuicksort(vector,primero, j);
if(ultimo>i) ordenarQuicksort(vector,i, ultimo);
}



pero no logro pasarlo a perl agradeceria mucho su ayuda
  #2 (permalink)  
Antiguo 10/07/2010, 15:05
 
Fecha de Ingreso: enero-2010
Mensajes: 191
Antigüedad: 14 años, 3 meses
Puntos: 7
Respuesta: ordenar varios numeros

No se si lo que necesitas es replicar la teoría en código u ordenar una lista utilizando es teoría, en el último caso perl dispone de una función llamada sort que aplica dicha teoría.

Código:
use sort '_quicksort';

@array = qw(2 3 6 5 1 7 9 4 0 10 8);
@array = sort {$a <=> $b} @array;
print "@array"; # quedará 0 1 2 3 4 5 6 7 8 9 10
Mas información: http://perldoc.perl.org/functions/sort.html

Como anédota una vez leí que un paparucho al momento de tomar programadores les indicaba que debían ordenar una lista utilizando quicksort, aunque la teoría es muy simple, por supuesto que ninguno pudo realizarla, ya que la ciencia computacional es tan amplia que es imposible saberse todas las teoría con las que se han desarrollado funciones en la mayoría de los lenguaje, lo irrisorio es que se quejaba de como tremendo programadores no iban a saberla, asi que pegale una memorizada, no valla a ser que te toque como jefe.

Última edición por abcdefghi; 11/07/2010 a las 10:47

Etiquetas: numeros
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 07:15.