Maison  >  Article  >  interface Web  >  Combien y a-t-il de piles en javascript ?

Combien y a-t-il de piles en javascript ?

WBOY
WBOYoriginal
2022-07-01 11:11:591473parcourir

Il n'y a pas de pile en JavaScript. Vous pouvez utiliser des tableaux pour implémenter toutes les fonctions de la pile. La pile est une structure de données dernier entré, premier sorti. Elle semble être une liste spéciale. le haut de la pile n'est pas accessible. Vous devez d'abord supprimer l'élément ci-dessus pour obtenir l'élément en bas de la pile. Par exemple, vous pouvez utiliser push() pour ajouter un élément en haut de la pile.

Combien y a-t-il de piles en javascript ?

L'environnement d'exploitation de ce tutoriel : système Windows 10, JavaScript version 1.8.5, ordinateur Dell G3.

Il existe plusieurs piles en JavaScript

Il n'y a pas de pile en JavaScript, mais les tableaux peuvent être utilisés pour implémenter toutes les fonctions de la pile.

La pile est une structure linéaire, et sa plus grande caractéristique est le premier entré, dernier sorti, dernier entré, premier sorti.

Combien y a-t-il de piles en javascript ?

push() :

Combien y a-t-il de piles en javascript ?

pop() :

Combien y a-t-il de piles en javascript ?

stack :

La pile est une structure de données similaire à une liste, vous pouvez l'utiliser pour résoudre de nombreuses programmations problèmes, la pile est une structure de données efficace, car les données ne peuvent être ajoutées ou supprimées qu'en haut de la pile, de telles opérations sont donc rapides et faciles à mettre en œuvre.

 La pile est un type spécial de liste. Les éléments du site ne sont accessibles qu'en faisant glisser une extrémité de la liste. Cette extrémité se trouve au sommet de la pile Chen Wei. Une pile de vaisselle est la structure de pile la plus courante. La vaisselle ne peut être prise que par le haut et la vaisselle lavée ne peut être placée que par le haut. La pile est appelée structure de données dernier entré, premier sorti.

Étant donné que la pile a la caractéristique du dernier entré, premier sorti, tout élément qui ne se trouve pas en haut de la pile n'est pas accessible. Afin d'obtenir l'élément en bas de la pile, l'élément au-dessus doit être supprimé.

  Les opérations sur la pile incluent le fait de pousser un élément sur la pile et de retirer un élément de la pile. Pour placer un élément en haut de la pile, utilisez la méthode push() et pour faire sortir un élément du haut de la pile, utilisez la méthode pop(). Une autre méthode consiste à prévisualiser les éléments en haut de la pile. Bien que vous puissiez accéder aux éléments en haut de la pile à l'aide de la méthode pop(), les éléments en haut de la pile seront définitivement supprimés après l'appel de cette méthode. La méthode peek() renvoie uniquement l'élément en haut de la pile sans le supprimer.

 Afin d'enregistrer la position de l'élément supérieur de la pile, et également de marquer où de nouveaux éléments peuvent être ajoutés, nous utilisons la variable top Lorsqu'un élément est poussé dans la pile, la variable augmente, et lorsqu'un élément est poussé. est sorti de la pile, la variable diminue.

 Les méthodes pop(), push() et peek() sont les trois méthodes les plus importantes. Définir la méthode clear() en même temps peut effacer tous les éléments de la pile. L'attribut length définit le nombre d'éléments. dans la pile et définit une propriété vide identifie s'il y a encore des éléments dans la pile, mais le même objectif peut être atteint en utilisant la propriété length.

Définir les opérations de pile

En tant que liste spéciale, la pile n'est accessible que par une extrémité, tout comme une pile d'assiettes. Vous ne pouvez la placer que sur le dessus et vous ne pouvez la prendre que par le haut. en haut, donc la pile est une structure de données premier entré, dernier sorti. En raison de cette caractéristique de la pile, tout élément de la pile qui ne se trouve pas en haut de la pile n'est pas accessible. Afin d'obtenir l'élément en bas de la pile, les éléments au-dessus doivent être supprimés et les éléments en bas. le bas de la pile est exposé sur le dessus de la pile. La pile peut également effacer tous les éléments qu'elle contient et peut également enregistrer le nombre d'éléments dans la pile.

 En résumé, nous définissons plusieurs méthodes pour faire fonctionner la stack.

  • push()  Ajouter un élément en haut de la pile

  • pop()  Supprimer l'élément du haut de la pile

  • peek()  Renvoie l'élément en haut de la pile

  • clear()  Effacer les éléments dans la pile

  • length() Le nombre d'éléments dans la pile

Implémentation de la pile

Implémentation de la pile, la structure de données sous-jacente utilise un tableau, en commençant par le constructeur définissant la pile ;

function Stack() {
    this.dataStore = [];         //用来保存栈内元素的数组
    this.top = 0;                   //top用来记录栈顶位置,初始化为0
    this.push = push;
    this.pop = pop;
    this.peek = peek;
    this.clear = clear;
    this.length = length;
}

Ensuite, push est implémenté (), pop(), peek(), clear() et length(). La méthode

push() est que lorsqu'un nouvel élément est ajouté en haut de la pile, cette valeur est ajoutée à la position supérieure du tableau qui enregistre la position supérieure de la pile. Le haut doit être ajouté de 1 à. terminer l'addition ;

pop() est exactement la même chose que push() ) Au contraire, top doit être réduit de 1, mais en même temps, après avoir soustrait 1, la valeur de la position supérieure est renvoyée, c'est-à-dire c'est-à-dire que l'élément a été supprimé ;

peek() renvoie directement l'élément en première position du tableau, c'est-à-dire l'élément supérieur de la pile

clear () Attribue directement la valeur supérieure à 0 et ; effacer la pile directement ;

length() renvoie directement la valeur de top, et la position supérieure de la pile est le nombre d'éléments dans la pile

function push(element) {
    this.dataStore[this.top++] = element;   // 先在top位置加入元素,之后top加1
}
function pop() {
    return this.dataStore[--this.top];   // top先减1,然后返回top位置的元素
}
function peek() {
    return this.dataStore[this.top - 1];
}
function clear() {
    this.top = 0;
}
function length() {
    return this.top;
}

[Recommandations associées : tutoriel vidéo javascript, front-end Web

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:
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