Maison  >  Article  >  Java  >  Base théorique Java - pile (partage résumé)

Base théorique Java - pile (partage résumé)

WBOY
WBOYavant
2022-03-11 17:11:422082parcourir

Cet article vous apporte les connaissances pertinentes de java, qui présente principalement les problématiques liées à la pile, y compris les opérations de base de la pile, les méthodes et propriétés de la pile, les deux méthodes d'implémentation de la pile, etc. j'espère que cela vous sera utile. Tout le monde est utile.

Base théorique Java - pile (partage résumé)

Étude recommandée : "Tutoriel d'apprentissage Java"

1. Le concept de pile

La pile, également connue sous le nom de pile, ​​en tant que structure de données, est une sorte de structure de données qui ne peut que Être inséré et inséré à une extrémité. Table linéaire spéciale pour les opérations de suppression.
C'est une table linéaire avec des opérations limitées. La restriction est que les opérations d'insertion et de suppression ne sont autorisées qu'à une extrémité du tableau. Cette extrémité est appelée le haut de la pile et l’autre extrémité est appelée le bas. La pile a des caractéristiques de premier entré, dernier sorti.
Base théorique Java - pile (partage résumé)

2. Opérations de base de la pile

Construire une pile : Avant d'utiliser la pile, construisez une pile vide
Push, push : Ajouter de nouveaux éléments à la pile
Pop : Supprimer l'élément supérieur de la pile
Lire la pile : interrogez l'élément en haut de la pile actuelle
pour obtenir la taille de la pile et effacer la pile. . .

3. Méthodes et attributs de pile

Base théorique Java - pile (partage résumé)
Base théorique Java - pile (partage résumé)

Push consiste à pousser dans la pile
Pop consiste à sortir de la pile

4. Deux façons d'implémenter la pile

① Tableau (liste de séquences). )

Le tableau est requis. Définissez une longueur fixe (nombre d'éléments) à l'avance

Base théorique Java - pile (partage résumé)

② Liste chaînée

La liste chaînée peut être considérée comme composée de petites pièces. Chaque pièce s'appuie sur des pointeurs pour pointer vers la. pièce suivante. Elle est liée par des pointeurs. La liste chaînée pointée est une structure de stockage non continue et non séquentielle sur l'unité de stockage physique. L'ordre logique des éléments de données est réalisé via l'adresse du pointeur de la liste chaînée. L'élément contient deux nœuds, l'un est le domaine de données (espace mémoire) où l'élément est stocké) et l'autre est un champ de pointeur pointant vers l'adresse du nœud suivant. En fonction du pointage du pointeur, la liste chaînée peut former différentes structures, telles qu'une liste chaînée simple, une liste chaînée double, une liste chaînée circulaire, etc.
Base théorique Java - pile (partage résumé)

5 La différence entre les tableaux et les listes chaînées

Array
. Avantages :

1. L'interrogation des éléments par index est rapide
2. Il est pratique de parcourir le tableau en fonction de l'index

Inconvénients :

1. Définir une longueur fixe (nombre d'éléments) à l'avance
2. Cela ne peut pas être effectué. s'adapter à l'augmentation et à la diminution dynamiques des données.
Lorsque les données augmentent, elles peuvent dépasser le nombre d'éléments initialement défini, provoquant une sortie du tableau hors des limites ;
Lorsque les données diminuent, cela provoque un gaspillage de mémoire

Liste liée
Avantages :

1. Aucune initialisation de capacité n'est requise et des éléments peuvent être ajoutés ou soustraits arbitrairement ;
2. Lors de l'ajout ou de la suppression d'éléments, il vous suffit de modifier les champs de pointeur des deux nœuds d'éléments pour qu'ils pointent vers l'adresse, donc l'ajout et la suppression sont effectués. très rapide

Inconvénients : 

1. Parce qu'il contient un grand nombre de champs de pointeur, il prend beaucoup de place. Grand ; La recherche d'éléments nécessite de parcourir la liste chaînée pour les trouver, ce qui prend beaucoup de temps.

Si vous souhaitez accéder aux données rapidement et n'insérez pas ou ne supprimez pas souvent d'éléments, choisissez le scénario dans lequel la quantité de données du tableau est faible et des ajouts et suppressions fréquents sont nécessaires
Si vous n'avez pas d'exigences élevées en matière d'efficacité de. pour accéder aux éléments, choisissez Liste chaînée

6. Le rôle de la pile

6.1. Sauvegarde des variables locales :

Les variables locales peuvent également être utilisées dans les fonctions, mais les variables globales ne peuvent pas toujours être utilisées. Ensuite, les variables locales doivent être stockées là où cela est approprié, c'est-à-dire qu'il ne doit y avoir aucun conflit lorsque les fonctions sont imbriquées et que l'efficacité doit être privilégiée.

6.2 Passage de paramètres

Le but du passage de paramètres est de réutiliser le code afin qu'une méthode puisse être appliquée à plus de situations sans écrire N ensembles de codes similaires pour N situations. Alors, quelle méthode est utilisée pour transférer les paramètres ? Vous pouvez choisir :

6.3 Enregistrer la valeur du registre

S'il y a un conflit dans le transfert des paramètres du registre, vous pouvez temporairement pousser la valeur du registre dans la pile

6.4 Autres fonctions

1) La pile est la base de chaque architecture de fonction et implémente la fonction Réutilisation.
2) Lorsqu'un problème survient, vous pouvez utiliser la pile pour comprendre la situation dans laquelle le problème s'est produit.
3) La pile est la base de la construction du mode multitâche du système d'exploitation.

Apprentissage recommandé : "Tutoriel 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!

Déclaration:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer