Bonjour,
J'ai une question simple, mais je n'arrive pas à trouver de réponse satisfaisante.
Je recherche une manière simple de stocker une collection d'objets, triée suivant une propriété de l'objet, de telle sorte que je puisse facilement (recherche en O(Ln(n))) extraire une sous-liste suivant la dite propriété.
Exemple : une classe Animal avec une propriété Nom
J'ai une liste de N Animal, je peux la trier suivant le Nom.
Maintenant je veux extraire les M Animal dont le Nom est égal à "Médor".
2eme possibilité : je veux extraire tous les animaux dont le nom est compris entre "Md*" et "Mf*".
A titre de comparaison, dans une BDD, ce genre de requête serait optimisée par l'ajout d'un index sur la colonne Nom de la table Animal.
Je ne trouve pas une manière de faire élégante en C#.
Dois-je implémenter moi même un algorithme de recherche (par dichotomie par exemple).
Je vous remercie par avance.
Partager