Pour être complet, "quelle structure est accessible en temps linéaire ?" A Liste liée est accessible en temps linéaire. Pour obtenir le n
élément que vous devez traverser n-1
les éléments précédents. Vous savez, comme un magnétophone ou une cassette VHS, où pour aller à la fin de la bande/VHS il fallait attendre longtemps :-)
Un tableau est plus similaire à un disque dur : chaque point est accessible en temps "constant" :-)
C'est la raison pour laquelle la mémoire vive d'un ordinateur est appelée RAM : Random Access Memory. Vous pouvez aller à n'importe quel endroit si vous connaissez son adresse sans traverser toute la mémoire avant cet endroit.
Certaines personnes m'ont dit que l'accès au disque dur n'est pas vraiment en temps constant (par accès, j'entends "le temps de positionner la tête et de lire un secteur du disque dur"). Je dois dire que je n'en suis pas sûr. J'ai fait des recherches sur Google et je n'ai trouvé personne qui en parle. Je sais que le temps n'est pas linéaire, car l'accès est toujours aléatoire. En fin de compte, si vous pensez que l'accès au disque dur n'est pas assez constant pour vous (mais alors, qu'est-ce qui est constant ? l'accès de la RAM ? en considérant le cache, le préfixe, la localité des données et les optimisations du compilateur), vous pouvez considérer la phrase comme suit Un tableau est plus similaire à une clé USB : chaque point est accessible en temps "constant" :-)