Σε αυτό το παράδειγμα, θα μάθουμε να εφαρμόζουμε τη δομή δεδομένων στοίβας στην Java.
Για να κατανοήσετε αυτό το παράδειγμα, θα πρέπει να γνωρίζετε τις ακόλουθες εφαρμογές προγραμματισμού Java:
- Τάξη Java Stack
- Java Generics
Παράδειγμα 1: Πρόγραμμα Java για εφαρμογή Stack
// Stack implementation in Java class Stack ( // store elements of stack private int arr(); // represent top of stack private int top; // total capacity of the stack private int capacity; // Creating a stack Stack(int size) ( // initialize the array // initialize the stack variables arr = new int(size); capacity = size; top = -1; ) // push elements to the top of stack public void push(int x) ( if (isFull()) ( System.out.println("Stack OverFlow"); // terminates the program System.exit(1); ) // insert element on top of stack System.out.println("Inserting " + x); arr(++top) = x; ) // pop elements from top of stack public int pop() ( // if stack is empty // no element to pop if (isEmpty()) ( System.out.println("STACK EMPTY"); // terminates the program System.exit(1); ) // pop element from top of stack return arr(top--); ) // return size of the stack public int getSize() ( return top + 1; ) // check if the stack is empty public Boolean isEmpty() ( return top == -1; ) // check if the stack is full public Boolean isFull() ( return top == capacity - 1; ) // display elements of stack public void printStack() ( for (int i = 0; i <= top; i++) ( System.out.print(arr(i) + ", "); ) ) public static void main(String() args) ( Stack stack = new Stack(5); stack.push(1); stack.push(2); stack.push(3); System.out.print("Stack: "); stack.printStack(); // remove element from stack stack.pop(); System.out.println("After popping out"); stack.printStack(); ) )
Παραγωγή
Εισαγωγή 1 Εισαγωγή 2 Εισαγωγή 3 Στοίβα: 1, 2, 3, Αφού εμφανιστεί 1, 2,
Στο παραπάνω παράδειγμα, έχουμε εφαρμόσει τη δομή δεδομένων στοίβας στην Java.
Για να μάθετε περισσότερα, επισκεφθείτε τη Δομή δεδομένων στοίβας.
Παράδειγμα 2: Εφαρμογή στοίβας χρησιμοποιώντας κλάση Stack
Η Java παρέχει μια ενσωματωμένη Stack
κλάση που μπορεί να χρησιμοποιηθεί για την υλοποίηση μιας στοίβας.
import java.util.Stack; class Main ( public static void main(String() args) ( // create an object of Stack class Stack animals= new Stack(); // push elements to top of stack animals.push("Dog"); animals.push("Horse"); animals.push("Cat"); System.out.println("Stack: " + animals); // pop element from top of stack animals.pop(); System.out.println("Stack after pop: " + animals); ) )
Παραγωγή
Στοίβα: (Σκύλος, Άλογο, Γάτα) Στοίβα μετά το ποπ: (Σκύλος, Άλογο)
Στο παραπάνω παράδειγμα, χρησιμοποιήσαμε την Stack
κλάση για να εφαρμόσουμε τη στοίβα στην Java. Εδώ,
- animal.push () - εισάγετε στοιχεία στην κορυφή της στοίβας
- animals.pop () - αφαιρέστε το στοιχείο από την κορυφή της στοίβας
Σημειώστε ότι χρησιμοποιήσαμε τις γωνίες αγκύλες κατά τη δημιουργία της στοίβας. Αντιπροσωπεύει ότι η στοίβα είναι γενικού τύπου.