J'essaie de lister la complexité temporelle des opérations des structures de données communes telles que les tableaux, l'arbre de recherche binaire, le tas, la liste chaînée, etc., et en particulier, je fais référence à Java. Ils sont très fréquents, mais je suppose que certains d’entre nous n’ont pas confiance en la réponse exacte. Toute aide, en particulier les références, est grandement appréciée.
Par exemple. Pour une liste chaînée: La modification d'un élément interne est O (1). Comment peux-tu le faire? Vous DEVEZ pour rechercher l'élément avant de le modifier. De plus, pour le vecteur, l'ajout d'un élément interne est donné par O (n). Mais pourquoi ne pouvons-nous pas le faire en temps constant amorti en utilisant l'indice? S'il vous plaît corrigez-moi si je manque quelque chose.
Je publie mes découvertes/suppositions comme première réponse.
Delete
disponible sur les tableaux. Nous pouvons supprimer symboliquement un élément en lui attribuant une valeur spécifique, par exemple. -1, 0, etc. selon nos besoinsInsert
pour les tableaux est fondamentalement Set
comme mentionné au début