Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- public class StackInt
- {
- private int[] elements; // Array für Stackspeicher
- private readonly int size; // Größe des Stacks
- private int pointer; // Zeiger auf das nächste freie Element
- public StackInt(int size)
- {
- this.size = size;
- elements = new int[size];
- }
- public void Push(int element)
- {
- if (pointer >= size)
- {
- throw new OverflowException();
- }
- elements[pointer] = element;
- pointer++;
- }
- public int Pop()
- {
- pointer--;
- if (pointer >= 0)
- {
- return elements[pointer];
- }
- else
- {
- pointer = 0;
- throw new InvalidOperationException("Der Stack ist leer");
- }
- }
- public int Peek()
- {
- pointer--;
- if (pointer >= 0)
- {
- int obj = elements[pointer];
- pointer++;
- return obj;
- }
- else
- {
- pointer++;
- throw new InvalidOperationException("Der Stack ist leer");
- }
- }
- }
- public class StackDouble
- {
- private double[] elements; // Array für Stackspeicher
- private readonly int size; // Größe des Stacks
- private int pointer; // Zeiger auf das nächste freie Element
- public StackDouble(int size)
- {
- this.size = size;
- elements = new double[size];
- }
- public void Push(double element)
- {
- if (pointer >= size)
- {
- throw new OverflowException();
- }
- elements[pointer] = element;
- pointer++;
- }
- public double Pop()
- {
- pointer--;
- if (pointer >= 0)
- {
- return elements[pointer];
- }
- else
- {
- pointer = 0;
- throw new InvalidOperationException("Der Stack ist leer");
- }
- }
- public double Peek()
- {
- pointer--;
- if (pointer >= 0)
- {
- double obj = elements[pointer];
- pointer++;
- return obj;
- }
- else
- {
- pointer++;
- throw new InvalidOperationException("Der Stack ist leer");
- }
- }
- }
- public class StackString
- {
- private string[] elements; // Array für Stackspeicher
- private readonly int size; // Größe des Stacks
- private int pointer; // Zeiger auf das nächste freie Element
- public StackString(int size)
- {
- this.size = size;
- elements = new string[size];
- }
- public void Push(string element)
- {
- if (pointer >= size)
- {
- throw new OverflowException();
- }
- elements[pointer] = element;
- pointer++;
- }
- public string Pop()
- {
- pointer--;
- if (pointer >= 0)
- {
- return elements[pointer];
- }
- else
- {
- pointer = 0;
- throw new InvalidOperationException("Der Stack ist leer");
- }
- }
- public string Peek()
- {
- pointer--;
- if (pointer >= 0)
- {
- string obj = elements[pointer];
- pointer++;
- return obj;
- }
- else
- {
- pointer++;
- throw new InvalidOperationException("Der Stack ist leer");
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement