Advertisement
Guest User

Untitled

a guest
Jan 28th, 2020
57
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.18 KB | None | 0 0
  1. package com.telerikacademy;
  2.  
  3. import java.util.ArrayList;
  4. import java.util.EmptyStackException;
  5. import java.util.Iterator;
  6. import java.util.List;
  7.  
  8. public class StackImpl<T> implements Stack<T> {
  9. private int count;
  10.  
  11. private static class Node<T>{
  12. private T data;
  13. private Node next;
  14.  
  15.  
  16. private Node(T data){
  17. this.data = data;
  18. }
  19. }
  20.  
  21. private Node<T> topElement;
  22.  
  23.  
  24. @Override
  25. public void push(T elem) {
  26. Node node = new Node(elem);
  27. node.next = topElement;
  28. topElement = node;
  29. count++;
  30. }
  31.  
  32. @Override
  33. public T pop() {
  34. if(topElement == null){
  35. throw new IllegalArgumentException();
  36. }
  37. T data = topElement.data;
  38. topElement = topElement.next;
  39. count--;
  40. return data;
  41. }
  42.  
  43. @Override
  44. public T peek() {
  45. if(topElement == null){
  46. throw new IllegalArgumentException();
  47. }
  48. return topElement.data;
  49. }
  50.  
  51. @Override
  52. public int size() {
  53. return count;
  54. }
  55.  
  56. @Override
  57. public boolean isEmpty() {
  58. return topElement == null;
  59. }
  60. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement