Files
004_comission/_resources/it114105/itp4510/Lab03/Lab3.2/LinkedStack.java
louiscklaw 6c60a73f30 update,
2025-01-31 19:15:17 +08:00

40 lines
910 B
Java

public class LinkedStack implements Stack {
private LinkedList sll = new LinkedList();
@Override
public int size() {
return sll.getCount();
}
@Override
public boolean isEmpty() {
return sll.isEmpty();
}
@Override
public void push(Object item) throws StackFullException {
sll.addToHead(item);
}
@Override
public Object pop() throws StackEmptyException {
try {
Object item = sll.removeFromHead();
return item;
} catch (EmptyListException e) {
throw new StackEmptyException();
}
}
@Override
public Object top() throws StackEmptyException {
try {
Object item = sll.removeFromHead();
sll.addToHead(item);
return item;
} catch (EmptyListException e) {
throw new StackEmptyException();
}
}
}