Aide pour tri de tableau multi-dimensionnel [PHP] - PHP - Programmation
Marsh Posté le 07-06-2005 à 11:56:43
ReplyMarsh Posté le 07-06-2005 à 12:33:23
cesarr89 a écrit : Tu es vraiment pas patient. |
Je préfèrerais une vraie fonction, car la taille de mon tableau dépasse les 100000, alors je voudrais que ça soit optimisé
Berceker United a écrit : Regarde dans la doc. |
J'avais bien trouvé cette fonction dans la doc sur PHP.net, mais son utilité me paraissait moins évidente que l'explication de nexen.
Je vais regarder ça merci
Marsh Posté le 07-06-2005 à 12:59:08
Pour tester avec array_multisort(), j'ai fait ça :
Code :
|
Ca ne fonctionne pas, mais c'est pour vous donner une idée de ce que je veux faire.
Marsh Posté le 12-06-2005 à 12:58:39
Moi je pense que j'aurais décomposé les dimensions du tableau puis utilisé à chaque fois la fonction sort() puis je replace le tableau dans sa dimension.
Marsh Posté le 12-06-2005 à 15:04:19
j'ai créé ma propre fonction de tri rapide et ça fonctionne, merci ^^
Marsh Posté le 12-06-2005 à 16:18:38
nero27 a écrit : j'ai créé ma propre fonction de tri rapide et ça fonctionne, merci ^^ |
Peux tu le mettre ici je pense que c'est le genre de chose qui va être beaucoup demandé. je le placerais dans le topic des tuto
si tu le veux bien.
Marsh Posté le 13-06-2005 à 09:14:31
Code :
|
Marsh Posté le 13-06-2005 à 11:25:56
J'ai pas trop regardé dans les détails mais à premiere vu j'ai l'impression qu'il y a moyen de faire plus simple. Mais si sa marche tant mieux.
Marsh Posté le 13-06-2005 à 11:29:34
Vu le type de tableau, y'a pas moyen de faire plus simple (pour éviter de mélanger toutes les cases des tableaux contenus dans le tableau principal)
Marsh Posté le 13-06-2005 à 13:26:35
Je te fais cela de tête comme ça sans tester pour voir.
- Je boucle sur chaque élément de mon tableau et regarde si c'est pas une dimension ou des données.
-Si dimension je rappelle ma fonction de façon récurcive.
-Si c'est une donnée je place dans un tableau temporaire et applique la fonction sort() puis je replace les éléments dans sa dimension.
Marsh Posté le 13-06-2005 à 15:12:29
Code :
|
T'as 100 000 éléments dans ton tableau ?
Comment ça se fait ?
Si c'est lié à ceci : http://forum.hardware.fr/hardwaref [...] 1715-1.htm
c'est un problème de conception et/ou d'architecture (cf notre discussion sur encore un autre topic ).
Marsh Posté le 13-06-2005 à 15:37:59
C'est mieux
Je te conseille donc le code que je t'ai posté
Marsh Posté le 07-06-2005 à 11:24:44
Voilà, j'ai un tableau de ce style :
Je voudrais trier le tableau $tab de façon à ce que tous les tableaux qui le composent soient ordonnées par les valeurs numériques pour obtenir :
Savez-vous s'il existe une fonction pour faire cela ?
Je peux toujours programmer le tri à la main, mais y'a surement plus simple.
Merci d'avance
Message édité par nero27 le 07-06-2005 à 11:25:23