Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1280 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  [RESOLU]Trier un tableau a deux dimensions

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[RESOLU]Trier un tableau a deux dimensions

n°1497356
hardrog
Play it fucking loud !!
Posté le 30-12-2006 à 17:46:27  profilanswer
 

Bonjour,
je dispose d'un tableau à deux dimensions du type:

Code :
  1. //                               NOM:     |   POINTS:
  2. Array (
  3.            [0] => Array ( [0] => pierre[1] => 439677 )
  4.            [1] => Array ( [0] => jean [1] => 228257 )
  5.            [2] => Array ( [0] => jacques [1] => 320168 )
  6.            [3] => Array ( [0] => paul [1] => 393616 )
  7.            [4] => Array ( [0] => bruno [1] => 506652 )
  8.            [5] => Array ( [0] => thomas[1] => 256524 )
  9.            [6] => Array ( [0] => francois[1] => 1274581 )
  10.         )


Je souhaiterais donc trier mon tableau en fonction du nombres de points qui correspond à la deuxiéme case du second tableau.
Merci d'avance pour vos pistes ou idées.
Hardrog

Message cité 1 fois
Message édité par hardrog le 30-12-2006 à 20:53:04
mood
Publicité
Posté le 30-12-2006 à 17:46:27  profilanswer
 

n°1497373
Sve@r
Posté le 30-12-2006 à 18:40:21  profilanswer
 

hardrog a écrit :

Bonjour,
je dispose d'un tableau à deux dimensions du type:

Code :
  1. //                               NOM:     |   POINTS:
  2. Array (
  3.            [0] => Array ( [0] => pierre[1] => 439677 )
  4.            [1] => Array ( [0] => jean [1] => 228257 )
  5.            [2] => Array ( [0] => jacques [1] => 320168 )
  6.            [3] => Array ( [0] => paul [1] => 393616 )
  7.            [4] => Array ( [0] => bruno [1] => 506652 )
  8.            [5] => Array ( [0] => thomas[1] => 256524 )
  9.            [6] => Array ( [0] => francois[1] => 1274581 )
  10.         )


Je souhaiterais donc trier mon tableau en fonction du nombres de points qui correspond à la deuxiéme case du second tableau.
Merci d'avance pour vos pistes ou idées.
Hardrog


 
Ben pour un tableau d'aussi petite taille, l'algo du tri à bulle semble le plus simple à implémenter...


---------------
Vous ne pouvez pas apporter la prospérité au pauvre en la retirant au riche.
n°1497374
hardrog
Play it fucking loud !!
Posté le 30-12-2006 à 18:41:13  profilanswer
 

J'avance, maintenant j'arrive a faire un pseudo tri:
 

Code :
  1. print_r($tableau);


affiche:

Code :
  1. //                               NOM:     |   POINTS:
  2.  
  3.       Array (
  4.  
  5.                 [6] => Array ( [0] => francois[1] => 1274581 )
  6.                 [4] => Array ( [0] => bruno [1] => 506652 )
  7.                 [0] => Array ( [0] => pierre[1] => 439677 )
  8.                 [3] => Array ( [0] => paul [1] => 393616 )
  9.                 [2] => Array ( [0] => jacques [1] => 320168 )
  10.                 [5] => Array ( [0] => thomas[1] => 256524 )
  11.                 [1] => Array ( [0] => jean [1] => 228257 )
  12.  
  13.              )


 
On peut voir que le tri a bien été effectué, mais le probléme qui se pose est que le tri n'affecte pas l'indice du tableau.  
 
j'aurais voulut avoir:
 

Code :
  1. //                               NOM:     |   POINTS:
  2.  
  3.       Array (
  4.  
  5.                 [0] => Array ( [0] => francois[1] => 1274581 )
  6.                 [1] => Array ( [0] => bruno [1] => 506652 )
  7.                 [2] => Array ( [0] => pierre[1] => 439677 )
  8.                 [3] => Array ( [0] => paul [1] => 393616 )
  9.                 [4] => Array ( [0] => jacques [1] => 320168 )
  10.                 [5] => Array ( [0] => thomas[1] => 256524 )
  11.                 [6] => Array ( [0] => jean [1] => 228257 )
  12.  
  13.              )


 
Auriez vous des idées?
Hardrog
 

n°1497381
Sve@r
Posté le 30-12-2006 à 19:00:25  profilanswer
 

hardrog a écrit :

Auriez vous des idées?


Oui, tu implémentes toi-même l'algo. Avec permutation des éléments placés à la mauvaise place etc...


---------------
Vous ne pouvez pas apporter la prospérité au pauvre en la retirant au riche.
n°1497382
hardrog
Play it fucking loud !!
Posté le 30-12-2006 à 19:02:48  profilanswer
 

C'est bien ce dont j'avais peur.
 Mais le tri de tableau à deux dimensions doit être une tâche assez fréquente, je pensais donc que quelqu'un l'aurait déjà fait. Je reste ouvert a toutes suggestions :cry: .
Hardrog

n°1497390
naceroth
Posté le 30-12-2006 à 19:33:54  profilanswer
 

Sve@r a écrit :

Oui, tu implémentes toi-même l'algo. Avec permutation des éléments placés à la mauvaise place etc...


 
Ouais, enfin, un simple usort avec une fonction de comparaison assez triviale semble plus direct et simple à mettre en place

n°1497399
hardrog
Play it fucking loud !!
Posté le 30-12-2006 à 20:17:12  profilanswer
 

Merci pour la piste, je cherche dans ce sens (usort).  
Hardrog

n°1497405
hardrog
Play it fucking loud !!
Posté le 30-12-2006 à 20:53:47  profilanswer
 

J'ai abandonné le usort, pour une adaptation du tri a  bulle. Sa marche nickel, merci pour vos idées.
Hardrog


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  [RESOLU]Trier un tableau a deux dimensions

 

Sujets relatifs
[PHP][RESOLU]Est-ce possible?[résolu]problème avec un ptit programme bootable.
[Résolu][C] Exécuter un programme dans un autre programme.[javascrip] Changer l'action d'un formulaire[ résolu]
[résolu] update IF exists ELSE insert[résolu] Problème de mise à jour d'un champ
Css background d'un li au survol[Résolu] Evaluer la complexité de morceaux d'algo
[resolu]formulaire avec modification texte(couleur ,...)[Résolu] Bien sur IE, probleme sur Firefox
Plus de sujets relatifs à : [RESOLU]Trier un tableau a deux dimensions


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR