[Optimisation] : Listes ou tableaux?
Résolu
Bonjour à tous,
De manière générale j'utilise les listes que je trouve très puissantes. En revanche, il est clair que je pourrai parfois utiliser un tableau plutôt qu'une liste.
Est-ce que ça vaut le coût? Une liste est-elle consommatrice de ressources?
Merci,
Noémie.
De manière générale j'utilise les listes que je trouve très puissantes. En revanche, il est clair que je pourrai parfois utiliser un tableau plutôt qu'une liste.
Est-ce que ça vaut le coût? Une liste est-elle consommatrice de ressources?
Merci,
Noémie.
2 réponses
-
On est donc d'accord pour abuser un peu des listes (qui comme tu le rappelles sont bien plus souples) au détriment des tableaux car l'utilisation de ressources qui en résulte n'est pas vraiment plus élevée.
Des avis contraires sur le sujet?-
ModérateurPar contre il faut utiliser les listes au meilleur de leur potentiel. Si tu connais à l'avance le nombre d'éléments à ajouter à ta liste alors précises le dans ton constructeur. Ça dimensionnera du premier coup le tableau interne et optimisera les ajouts (un redimensionnement est coûteux)
-
-
-
ModérateurJe ne connais pas spécifiquement C# mais les algorithmes doivent être assez proches de ce que connais en Java. L'implémentation des listes les plus courantes, les ArrayList, est basée sur un tableau. La différence c'est que la classe qui gère la liste se charge d'augmenter dynamiquement la taille de ce tableau. Mais si tu utilise directement un tableau la consommation de ressource sera identique, voire moindre, vu que tu n'as pas à tout encapsuler dans la classe liste. Cependant les méthodes d'accès (et notamment de redimensionnement) seront un peu plus fastidieuse si tu dois les gérer toi même quand une liste l'aurait fait toute seule...