Maison >Java >javaDidacticiel >Pourquoi un itérateur PriorityQueue ne garantit-il pas un parcours ordonné ?
Pourquoi l'itérateur PriorityQueue ne traverse-t-il pas les données dans l'ordre ?
Selon la documentation Java, l'itérateur utilisé dans l'itérateur de PriorityQueue () La méthode ne garantit pas le parcours des éléments dans un ordre particulier. Ceci est le résultat du fait que la structure de données sous-jacente, un tas binaire, ne prend pas en charge un tel parcours.
Un tas binaire conserve les éléments de manière partiellement ordonnée, le plus petit élément étant situé à la racine. La suppression de l'élément racine déclenche une réorganisation du tas pour placer le plus petit élément suivant à la racine. Ce processus de commande dynamique empêche un parcours ordonné efficace, d'où l'absence d'un tel algorithme en Java.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!