évidemment, mais bon, commence pas à la jouer, parce que aga ne trouvais pas l'algo pour faire ça, une solution simple fonction tres bien. d'ailelurs j'ai jamais parlé de l'organisation du tableau (ou autre SD): j'ai dit, "tu construit un autre: si y ait pas, t'ajoutes, sinon tu passes au suivant". je n'ai pas parlé de relation d'ordre comme tu le sous-entend avec ton tri. si on ne dispose ni de hashcode, ni de relation d'ordre, je ne vois pas rien d'autres qu'une strucutre linénaire.
hashcode => table de hash
relation d'ordre => tas, arbres, un tableau trié avec des opérations dichotomiques, ou une structure linéaire non-ordonée sont autant d'implémentations valides.
il faut considérer le pire des cas, certes, mais pas forcément. si l'ensemble est de petite taille, une structure linéaire tout simple fera tres bien le boulot, et peut etre plus rapidement. c'est bon exemple pour implémenter une Factory pour spécialiser les traitements (organisation différente en fonction de la quantité de données à manipuler et de leur type)
tout dépends des besoins