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

  FORUM HardWare.fr
  Programmation
  C#/.NET managed

  [C#] Trier un tableau d'objet

 



 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[C#] Trier un tableau d'objet

n°2182028
caps lock
Posté le 23-03-2013 à 16:27:34  profilanswer
 

Bonjour,
Avant toute chose, je suis débutant en C# et je n'ai pas trouvé une solution convenable lors de mes recherches.
 
Je dispose donc d'un tableau d'objet que je simplifie pour l'exemple  :

Code :
  1. Joueur[] tabJoueurs = new Joueur[100];
  2. tabJoueurs[classement] = new Joueur(nom, prenom, pays, points, classement);


 
Et je recherche une technique pour trier ces objets dans l'ordre décroissant des points, autrement dit, le joueur avec le plus de points doit être premier au classement et ainsi de suite. J'ai déjà réussi à créer une méthode (Permuter(obj1, obj2)) qui me permet d'inverser 2 objets entre eux, il me reste à l'implémenter.
 
Comment dois-je m'y prendre pour trier ce tableau sachant qu'il ne s'agit pas d'une liste et que par conséquent je ne peux pas utiliser le ".Sort()"
 
Merci

mood
Publicité
Posté le 23-03-2013 à 16:27:34  profilanswer
 

n°2182054
Jean-Kevai​n
Posté le 23-03-2013 à 18:57:06  profilanswer
 
n°2182056
pvclunacy
Posté le 23-03-2013 à 19:00:11  profilanswer
 

Bonjour,
 
Burned mais comme je te faisais l'exemple avec ton cas, je poste quand même  [:benou_grilled]  
tu peux le faire de deux façons :
 

Code :
  1. tabJoueurs = tabJoueurs.OrderByDescending(j => j.classement).ToArray();
  2. tabJoueurs= (from j in tabJoueurs orderby j.classement descending select j).ToArray();


Message édité par pvclunacy le 23-03-2013 à 19:01:45
n°2182067
TotalRecal​l
Posté le 23-03-2013 à 20:08:13  profilanswer
 

Petite précision : les messages ci-dessus valent pour la version >=3 du framwork.
 
Pour le faire en FW 2.0 ou inférieur, tu peux implémenter IComparer et appeler Sort (http://msdn.microsoft.com/en-us/library/234b841s.aspx).


---------------
Réalisation amplis classe D / T      Topic .Net - C# @ Prog
n°2182117
caps lock
Posté le 24-03-2013 à 19:53:31  profilanswer
 

C'est un exercice, je n'ai pas eu la possibilité d'utiliser Linq.
Je m'en suis sorti en effectuant un tri par sélection en fonction des points pour alimenter le classement (puis en effectuant une permutation d'objet).
Je posterai le code après la date de remise de l'exercice.
Merci à tous!


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  C#/.NET managed

  [C#] Trier un tableau d'objet

 

Sujets relatifs
[Recrutement] Jeu vidéo sur mobile recherche un développeur C++[ASP.NET - C#] Titre gridview
Tableau : je dois pouvoir ne pas perdre tous mes cheveux...[C/C++]Programme cube led, besoin d'aide pour comprendre
[WORD 2010] Sélectionner et déplacer une ligne dans un tableau[ASP.NET - C#] Récupérer valeur d'un gridview
lsite chainée en ADA avec allocation static des objets dans un tableauRencontre C++ Francophone
HTML tableau colspan 
Plus de sujets relatifs à : [C#] Trier un tableau d'objet


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