Meer informatie over Stack

Opdracht 1 Initialisatie een Stack en aantal bekijken

Maak een lege Stack voor strings, voeg er drie namen aan toe en bekijk het aantal elementen in de Stack.

Specificaties

  • Maak een nieuwe Stack van strings.
  • Voeg de namen “John”, “Alice” en “Bob” toe aan de Stack.

Verwachte output

Aantal: 3

Nu jij

using System; 
using System.Collections.Generic;  
 
Stack<string> names = new ________;  
 
// Voeg namen toe aan de Stack 
names._________; 
names._________; 
names._________; 
 
// Toon het aantal elementen in de Stack
Console.WriteLine($"Aantal: {names.Count}");

Opdracht 2 Stack gebruiken met Pop en Count

Verwijder het bovenste item van de Stack en toon het.

Specificaties

  • Voeg drie getallen (1, 2, 3) toe aan de Stack.
  • Haal het bovenste item van de Stack af en toon dit.

Verwachte output

Aantal: 3
Bovenste item: 3
Aantal: 2

Nu jij

using System;
using System.Collections.Generic;
 
Stack<int> numbers = new Stack<int>();
 
// Voeg getallen toe aan de Stack
numbers.Push(1);
numbers.Push(2);
numbers.Push(3);
 
//Tel het aantal in de Stack
int aantal = numbers._________;
Console.WriteLine($"Aantal: {aantal}"); 
 
// Verwijder, toon het bovenste item en tel opnieuw het aantal in de Stack
int topItem = numbers.________;
Console.WriteLine($"Bovenste item: {topItem}");
aantal = numbers._________;
Console.WriteLine($"Aantal: {aantal}");

Opdracht 3 Peek gebruiken om het bovenste item te bekijken

Bekijk het bovenste item van de Stack zonder het te verwijderen.

Specificaties

Voeg drie steden toe aan de Stack. Gebruik Peek om het bovenste item te bekijken zonder het te verwijderen.

Verwachte output

Bovenste stad: Amsterdam

Nu jij

using System;
using System.Collections.Generic;
 
Stack<string> cities = new Stack<string>();
 
// Voeg steden toe aan de Stack
cities.Push("Rotterdam");
cities.Push("Utrecht");
cities.Push("Amsterdam");
 
// Bekijk het bovenste item zonder te verwijderen
string topCity = cities.________;
Console.WriteLine($"Bovenste stad: {topCity}");

Opdracht 4 Controleer of een Stack leeg is

Controleer of de Stack leeg is.

Specificaties

  • Voeg drie kleuren toe aan de Stack.
  • Verwijder alle items.
  • Controleer of de Stack leeg is.

Verwachte output

Is de Stack leeg? True

Nu jij

using System;
using System.Collections.Generic;
 
Stack<string> colors = new Stack<string>();
 
// Voeg kleuren toe aan de Stack
colors.Push("Rood");
colors.Push("Blauw");
colors.Push("Groen");
 
// Verwijder alle items
while (________)
{
    colors.Pop();
}
 
Console.WriteLine($"Is de Stack leeg? {colors.________ == 0}");

Opdracht 5 Itereren door een Stack

Gebruik een while-lus om alle items in de Stack weer te geven.

Specificaties

  • Voeg vier fruitsoorten toe aan de Stack.
  • Toon alle items met een foreach-lus.

Verwachte output

Banana
Apple
Orange
Grape

Nu jij

using System;
using System.Collections.Generic;
 
Stack<string> fruits = new ________;
 
// Voeg fruitsoorten toe aan de Stack
fruits.Push("Grape");
fruits.Push("Orange");
fruits.Push("Apple");
fruits.Push("Banana");
 
// Toon de items in de Stack
foreach (string fruit in ________)
{
    Console.WriteLine(fruit);
}

Opdracht 6 String omkeren van een Stack

Gebruik een Stack om een ingevoerde string om te keren en de omgekeerde string weer te geven.

Specificaties

  • Vraag de gebruiker om een string in te voeren.
  • Gebruik een Stack om elk teken van de string in omgekeerde volgorde weer te geven.

Verwachte input en output

input: Keer dit om
output: mo tid reeK

Nu jij

using System;
using System.Collections.Generic;
 
string input = "________";
Stack<char> charStack = new Stack<char>();
 
// Voeg elk letter van de string toe aan de Stack
________
 
Console.Write("Omgekeerde string: ");
 
// Haal elk teken van de Stack en toon elke letter
________

Opdracht 7 Haakjes validatie met een Stack

Gebruik een Stack om te controleren of een reeks haakjes correct is of niet.

Specificaties

  • Gebruik een Stack om de haakjes te beheren.
  • Gebruik alleen ronde haakjes ( en ).
  • Controleer of elk geopend haakje een bijbehorend sluitend haakje heeft.
  • Geef een boolean waarde terug als eind resultaat

Verwachte input en output

input: (()()(()))
output: True

input: (((())()
output: false

Nu jij

using System;
using System.Collections.Generic;
 
string input = "_________";
bool bracketsCorrect = true;
Stack<char> bracketsStack = new Stack<char>();
foreach (char c in input)
{
    if (c == '(')
    {
        _________
    }
    else
    {
        if (bracketsStack._________ == 0 || bracketsStack._________ != '(')
        {
            bracketsCorrect = false;
            break;
        }
        bracketsStack._________;
    }
}
 
Console.WriteLine(bracketsCorrect && (bracketsStack.Count == 0));