Maison > Problème commun > Différence de pile

Différence de pile

藏色散人
Libérer: 2020-09-05 16:54:52
original
27371 Les gens l'ont consulté

Différence de pile

La différence entre le tas et la pile :

1. >

1. Pile (système d'exploitation) : automatiquement allouée et libérée par le système d'exploitation, stockant les valeurs des paramètres de fonction, les valeurs des variables locales, etc. Sa méthode de fonctionnement est similaire à la pile dans la structure des données ;

2. Heap (système d'exploitation) : Il est généralement alloué et libéré par le programmeur. Si le programmeur ne le libère pas, il peut être recyclé par. le système d'exploitation à la fin du programme. La méthode d'allocation est similaire dans la liste chaînée.

2. Différences dans les méthodes de mise en cache de la pile :

1 La pile utilise un cache de premier niveau. Elles se trouvent généralement dans l'espace de stockage lorsqu'elles sont appelées, et. immédiatement après la fin de l'appel. Release ;

2. Le tas est stocké dans le cache de deuxième niveau et le cycle de vie est déterminé par l'algorithme de récupération de place de la machine virtuelle (pas une fois qu'elle devient orpheline). objet, il peut être recyclé). Par conséquent, la vitesse d’appel de ces objets est relativement faible.

Tas : en mémoire, les types de données de référence sont stockés. La taille des types de données de référence ne peut pas être déterminée. Le tas est en fait un espace de stockage dans une structure de liste chaînée qui utilise l'espace dispersé dans la mémoire. le tas est déterminé par La taille du type référence est directement déterminée, et les changements dans la taille du type référence affectent directement les changements dans le tas

Pile : C'est un type valeur stocké dans la mémoire, le la taille est de 2M, si elle dépasse, une erreur sera signalée et un débordement de mémoire

3. Différences entre les structures de données de la pile :

Heap (structure de données). ) : Le tas peut être considéré comme un arbre, tel que : tri par tas ;

Pile (structure de données) : une structure de données premier entré, dernier sorti.

Caractéristiques : Premier entré, dernier sorti

Pour le premier entré, dernier sorti, étant donné que l'implémentation sous-jacente de Linklist est une structure de liste chaînée, nous utilisons Linklist pour explorer ce est premier entré, dernier sorti

Le code est le suivant :

package com.zking.list;
 
import java.util.LinkedList;
 
public class Linklisttest {
 
public static void main(String args[]) {
LinkedList ll = new LinkedList();
for (int i = 0; i < 5; i++) {
ll.addFirst(i);
}
 
ll.removeFirst();
 
for (Object object : ll) {
System.out.println(object);
}
 
}
 
}
Copier après la connexion

Résultat d'exécution :

Différence de pile

Selon à cet exemple simple, nous pouvons voir que grâce à Dans la boucle for, l'ordre dans lequel nous ajoutons des données à la collection est 0, 1, 2, 3, 4,

Lorsque la méthode delete est exécutée, 4 est supprimé et le résultat final du parcours est 3, 2, 1, 0.

Cela reflète donc les caractéristiques de la pile : premier entré, dernier sorti. .

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!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal