Buenas,
Quería preguntar como se hace lo siguiente ya que me he liado yo mismo a la hora de plantear el problema y necesito aclararlo.
Tengo un array que cumple lo siguiente: a,b,c,a2,b2,c2....
Necesito que esos datos se ordenen de manera que el que tenga la fecha (c) más grande sea el primero y mantenga su conjunto es decir que suponiendo que c2 es la fecha más grande del conjunto, el array quede: a2,b2,c2,a,b,c
No sé si me he expresado con claridad..
Saludos!
Ordenar un array de una dimensión
- chekok
- Hacker del Foro
- Mensajes: 111
- Registrado: 16 Sep 2011, 11:50
- Ubicación: Valencia / España
- Contactar:
Re: Ordenar un array de una dimensión
Puedes exponer un ejemplo real de los valores a tratar?
La vida es larga y dura.
- Chefito
- Profesional del Autoit
- Mensajes: 2035
- Registrado: 21 Feb 2008, 18:42
- Ubicación: Albacete/Cuenca (España)
Re: Ordenar un array de una dimensión
Mmmmm....depende de los datos que tengas que ordenar, se puede hacer una función de ordenación más facil y rápida, o más dificil y lenta.
Que rango pueden tener las letras? Ejemplo, de la "a" a la "d", o de la "a" a la "p", o todo el abecedario. Pueden haber más de dos letras?
Cuantos dígitos tienen los números? Ejemplo del 1 al 9, o del 1 al 100, etc.
Saludos.
Que rango pueden tener las letras? Ejemplo, de la "a" a la "d", o de la "a" a la "p", o todo el abecedario. Pueden haber más de dos letras?
Cuantos dígitos tienen los números? Ejemplo del 1 al 9, o del 1 al 100, etc.
Saludos.
Cita vista en algún lugar de la red: En este mundo hay 10 tipos de personas, los que saben binario y los que no ;).
- arkcrew
- Profesional del Autoit
- Mensajes: 506
- Registrado: 28 Sep 2009, 19:17
- Ubicación: Granada, España
- Contactar:
Re: Ordenar un array de una dimensión
Hola,
Perdón por ser tan descuidado, al final lo solucioné pasando el array a uno de dos dimensiones, con campos tipo campo1,campo2,fecha y ordenando con array sort con el index 2 para que tome la fecha.
Os muestro la función con un ejemplo:
Saludos!
Perdón por ser tan descuidado, al final lo solucioné pasando el array a uno de dos dimensiones, con campos tipo campo1,campo2,fecha y ordenando con array sort con el index 2 para que tome la fecha.
Os muestro la función con un ejemplo:
Código: Seleccionar todo
#include <Array.au3>
Local $array[9] = ["EAV-73195391","amtuvkx7e3","01/01/2013","EAV-73215992","vdt7a2t4kf","02/01/2013","EAV-73217786","ha3fhrardu","03/01/2013"]
_ArrayDisplay(ArrayOrder($array))
Func ArrayOrder($array)
Local $array2D[UBound($array)/3][3]
Local $n = 0
For $a = 0 to UBound($array)-1 step 3
$array2D[$n][0] = $array[$a];usuario
$array2D[$n][1] = $array[$a+1];clave
$array2D[$n][2] = $array[$a+2];fecha$array[$a-2];usuario
$n +=1
next
_ArraySort($array2D,1,0,0,2)
return $array2D;Array ordenado
EndFunc
ArkCrew
http://www.nodluna.blogspot.com
http://www.nodluna.blogspot.com