Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- public class PriorityQueue implements Worklist {
- private Node first = null; // first element of the Queue
- private Node last = null; // last element of the Queue
- private int size = 0;
- @Override
- public void add(String data) {
- Node tempNode = new Node(data, first);
- if (last == null) {
- first = tempNode;
- last = tempNode;
- } else if (data.compareTo(last.getData()) <= 0){
- last = tempNode;
- last.link = tempNode;
- } else {
- Node swap = last;
- remove();
- last = tempNode;
- last.link = swap;
- /*Node swap = new Node(last.getData(), last);
- remove();
- last = tempNode;
- last.link = swap;*/
- }
- size++;
- }
- @Override
- public boolean hasMore() {
- return (first != null);
- }
- @Override
- public String remove() {
- if (size == 0) {
- first = null;
- last = null;
- } else if (hasMore()){
- Node temp = first;
- first = first.getLink();
- size--;
- return temp.getData();
- }
- return null;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement