Bonjour,

tout d'abord je me présente :
je suis débutant en C, c'est le premier language compilé que j'apprends, mais je programme depuis deux ans ; je connais principalement javascript et python.

Pour en venir à mon problème :

je me demande ce qu'il est préférable d'utiliser entre une liste chainée et une liste "simple" de type array :

Pour créer la liste, j'ai une structure de départ. Un membre de cette structure me permet de trouver le noeud suivant (via une fonction). Je mets les éléments au fur et à mesure dans la liste. Je teste un autre membre de la structure pour savoir si j'ai fini. Par la suite, je veux accèder aux élements à partir d'un indice.

J'ai pensé à une liste simple, j'alloue 1, puis quand ça dépasse je réalloue (realloc) 2 puis 4, 8, etc.
Sinon, j'ai pensé aussi à utiliser une liste chainée, mais par la suite, je ne pourrais plus accéder aux éléments en temps constant.

Quelle est la meilleure méthode entre celles-la ? Y'en a-t-il d'autres auxquelles je n'ai pas pensé ?

merci d'avance.