| Stack.java |
1 /**
2 * 183.592 Programmierpraxis TU Wien WS2014/15 H.Moritsch
3 * Ein Stack von ganzzahligen Werten
4 */
5 class Stack {
6
7 private int[] elements; // die Werte
8
9 private int count; // aktuelle Größe (default: 0)
10
11 /**
12 * Konstruktor liefert einen leeren Stack einer bestimmten Kapazität
13 */
14 public Stack(int capacity) {
15 elements = new int[capacity];
16 }
17
18 /**
19 * Test auf "empty"
20 */
21 public boolean isempty() {
22 return ( count == 0 ); // aktuelle Größe ist 0
23 }
24
25 /**
26 * liefert aktuelle Größe des Stacks
27 */
28 public int size() {
29 return count;
30 }
31
32 /**
33 * Operation "push"
34 */
35 public boolean offerfirst(int number) {
36
37 if ( count == elements.length ) // Kapazität erreicht
38 return false;
39 else {
40 elements[ count++ ] = number; // number hinzufügen
41 return true;
42 }
43 }
44
45 /**
46 * Operation "pop"
47 */
48 public int pollfirst() {
49
50 if ( count == 0 )
51 return -999999;
52 else
53 return elements[ --count ];
54 }
55
56 }
57