Maison > développement back-end > C++ > Comment trouver l'objet avec la valeur de propriété maximale dans une collection en utilisant C #?

Comment trouver l'objet avec la valeur de propriété maximale dans une collection en utilisant C #?

Linda Hamilton
Libérer: 2025-01-25 20:26:11
original
810 Les gens l'ont consulté

How to Find the Object with the Maximum Property Value in a Collection Using C#?

Utilisez la méthode .Max() pour trouver l'objet avec la plus grande valeur d'attribut dans la collection C#

Supposons que vous ayez une collection d'objets contenant plusieurs propriétés et que vous deviez trouver l'objet avec la plus grande valeur de propriété spécifique. Par exemple, considérons une liste d'objets de type DimensionPair qui a deux propriétés entières Height et Width. Le but est de trouver et de renvoyer l'objet avec la valeur d'attribut Height la plus élevée.

Bien que déterminer la plus grande valeur .Max() soit facile à l'aide de la méthode Height de Linq, obtenir l'objet correspondant peut être difficile. Pour résoudre ce problème, vous pouvez profiter des méthodes d'extension MaxBy dans MoreLINQ. Cette méthode parcourt les données tout en conservant l'élément maximum et la valeur de projection maximale.

Pour le scénario donné, l'extrait de code suivant permettra d'obtenir le résultat souhaité :

<code class="language-csharp">var item = items.MaxBy(x => x.Height);</code>
Copier après la connexion
L'approche

MaxBy présente plusieurs avantages par rapport aux autres solutions :

  • Efficacité : Sa complexité temporelle est O(n), contrairement à d'autres méthodes qui peuvent être O(n^2) ou O(n log n).
  • Pass unique : Cette méthode n'évalue la projection qu'une seule fois par élément, réduisant ainsi les coûts de traitement.
  • Simplicité : Le code est concis et facile à comprendre, facile à maintenir et à déboguer.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal