Existe-t-il un moyen d'extraire la valeur la plus élevée (ou la plus faible) d'un ensemble? Par exemple, si je donne les résultats suivants « ensemble de l'octet »:Comment obtenir la valeur la plus élevée d'un ensemble Delphi?
[0, 1, 2, 4, 5, 28, 199]
est-il une fonction que je pouvais courir sur ce point et revenir 199 comme résultat?
EDIT: Il existe une solution de force brute évidente impliquant une boucle for..in. Si possible, j'aimerais trouver un meilleur moyen que cela.
Une boucle 256-max-temps pour trouver le bit le plus élevé est pas la force brute. Une attaque sur le DoD ou en essayant de déchiffrer RSA est une force brute. C'est la meilleure solution. Ecrivez votre code pour la lisibilité d'abord, la vitesse seconde (et seulement si vous découvrez un véritable goulot d'étranglement). – paxdiablo
Ce genre de repose sur la mise en œuvre interne d'un ensemble comme un bitset n'est-ce pas? Sinon, je préférerais boucler sur les éléments de l'ensemble au lieu de boucler toutes les valeurs possibles ... – jpfollenius
Smasher, il n'y a aucun moyen d'énumérer le contenu d'un ensemble sauf en vérifiant toutes les valeurs possibles. En interne, c'est ainsi que fonctionne la boucle "for-in". La méthode que j'ai démontrée avec le code ne repose sur aucune représentation interne, mais seulement sur l'ensemble fini.Toute solution de twittling repose sur la représentation interne, mais c'est une hypothèse très sûre: les sets de Delhi n'ont jamais changé; ils sont les mêmes qu'ils étaient en Turbo Pascal. –