Uno stack è una struttura di dati di base che funge da elenco lineare contenente i suoi elementi. In questo caso, l'articolo viene aggiunto a un'estremità dell'elenco, noto come top, e gli articoli vengono rimossi dallo stesso lato. Ciò significa che l'elemento inserito nella prima posizione verrà rimosso alla fine. Possiamo creare, eliminare o aggiornare gli elementi.
Nuova creazione di stack
Per creare un nuovo stack, dobbiamo includere prima la libreria dello stack per eseguire tutte le funzioni applicate allo stack.
Modello> Stack di classe
I valori presenti nella sintassi sono "tipo" che mostra il tipo di elemento presente nello stack. Può essere qualsiasi tipo come intero, galleggiante, ecc. Il secondo è il "contenitore" che è il tipo di oggetto del contenitore attualmente sottosoprito.
Operazioni di stack
Le operazioni primarie dello stack sono spiegate di seguito:
Applicazioni in pila
La funzione Redo-Condo è molto comune tra i redattori di testo o gli editori di foto come Photoshop e MS Word è un esempio dello stack.
Durante l'utilizzo di un browser Web, vediamo le opzioni in avanti e all'indietro per le pagine di recente chiusura.
Lo stack è anche usato come gestione della memoria; I computer moderni possono utilizzare lo stack come gestione primaria per i programmi in esecuzione.
Tecniche di lavoro / algoritmo di stack
Implementazione dello stack
Esempio 1
Come descritto sopra, prima di iniziare il programma principale, dobbiamo aggiungere la libreria dello stack nel file di intestazione del nostro programma.
#includere
Questa libreria contiene tutte le operazioni e le funzioni associate, quindi dovrebbe essere utilizzata. Abbiamo usato lo spazio dei nomi per utilizzare tutte le classi senza chiamare. Nel programma principale, abbiamo applicato una semplice logica per dimostrare ogni operazione di stack in una singola riga.
Abbiamo creato uno stack per archiviare i valori dei tipi di dati interi.
Pilast.
Per immettere i valori nello stack, abbiamo usato manualmente la funzione push (). Ogni volta che questa funzione verrà chiamata dall'oggetto che creiamo. Usiamo push () per inserire i valori a partire da 50 a 80. Dopo l'inserimento, dobbiamo esprimere il valore usando il pop (). Usando questa funzione, l'elemento superiore dello stack che è 80 verrà rimosso e ora 70 diventerà l'elemento superiore. Usando nuovamente la funzione pop (), rimuoveremo il numero 70 e ora l'elemento superiore è 60. Alla fine, usiamo il ciclo while per garantire che lo stack sia pieno. Se è vero, viene applicata la funzione pop (). Il corpo del ciclo while è terminato.
Utilizza il compilatore G ++ per compilare ed eseguire il codice sorgente. "Pila.c ӏ il nome di un file.
stack $ g ++ -o.C.
$ ./pila
Puoi vedere che quando il programma viene eseguito, entrambi i valori immessi alla fine vengono rimossi dallo stack lavorando sulla tecnica LIFO.
Esempio 2
Andando avanti verso il secondo esempio, ciò comporta l'interazione dell'utente. Tutte le operazioni dello stack sono applicate separatamente in questo programma. Mostriamo anche tutti gli elementi dello stack. Nel programma principale, ogni funzione viene chiamata in base al valore che l'utente inserisce durante l'esecuzione. Ora a partire dalla prima operazione dello stack utilizzando STD dello spazio dei nomi, la funzione inizia. Qui abbiamo dichiarato lo stack a livello globale con il tipo di dati interi di 100 lunghezze di elementi. La funzione push riceve il valore dal programma principale che l'utente immetterà. All'interno della funzione, l'istruzione IF-ELSE viene utilizzata per verificare se lo stack non è pieno. Se lo stack non è vuoto, viene visualizzato un messaggio all'utente; Altrimenti, il valore viene inserito. E il valore migliore è aumentato.
Allo stesso modo, nel caso della funzione pop (), il valore superiore viene verificato se è inferiore a -1 posizione indica che lo stack è vuoto, quindi il messaggio viene visualizzato altro, il valore viene visualizzato.
Usiamo un ciclo 'per' per mostrare tutti gli elementi inseriti da push () nello stack per visualizzare tutti gli elementi.
Un menu intuitivo viene creato nel programma principale per ottenere l'opzione utente.
Vengono visualizzate 4 opzioni. Se l'utente seleziona il primo, questa sarà la funzione push. A tale scopo, abbiamo usato un'istruzione switch. Il compilatore passa la scelta immessa e il programma viene eseguito.
Successivamente, eseguire il codice; Ora vedrai un menu che appare in esecuzione del codice riuscita. Innanzitutto, selezioneremo la prima opzione per inserire i valori. I valori verranno inseriti le prime quattro volte, quindi visualizzeremo tutti i valori selezionando l'opzione numero 3.
Tutti i valori verranno visualizzati qui. Ora dobbiamo far emergere l'ultimo valore che abbiamo inserito. Quindi seleziona l'opzione 2. Questo rimuoverà il valore superiore. La selezione di nuovamente l'opzione pop rimuoverà nuovamente il valore più in alto.
Conclusione
L'articolo "Crea Stack in C ++" coinvolge il sistema operativo Linux per implementare il programma nel linguaggio di programmazione C ++. L'attuale guida contiene l'utilizzo di base e la dichiarazione dello stack in C++. Abbiamo usato due esempi che coinvolgono il funzionamento dello stack. Alcuni esempi di routine quotidiani dello stack sono anche menzionati in questo articolo.