Question: I need the code given to use the linked list given and to make a stack and queue. All need to use generics. Linked List

I need the code given to use the linked list given and to make a stack and queue. All need to use generics.

Linked List code:

public class List { // put all fields from ListAsLinkedList class here Node cur; Node head; Node tail; int size = 0; // put all methods from ListAsLinkedList class here // Adds the characters to the end of the list public void append(char value) { if (head == null) { cur = new Node(); cur.setData(value); head = tail = cur; } else { cur = tail; Node temp = new Node(); cur.setNext(temp); cur = cur.getNext(); tail = cur; tail.setData(value); } size += 1; } // Adds the characters to the front of the list public void prepend(char value) { if (head == null) { cur = new Node(); cur.setData(value); System.out.println(cur); head = tail = cur; System.out.println(head); System.out.println(cur); } else { Node temp = new Node(); temp.setNext(head); head = cur = temp; head.setData(value); } size += 1; } // Deletes values at a certain position public void deleteAt(int position) { cur = head; if (position < size) { for(int i = 1; i < position; i++) { cur = cur.getNext(); } cur.setNext(cur.getNext().getNext()); } else { while (cur.getNext() != tail) { cur = cur.getNext(); } tail = cur; cur.setNext(cur.getNext().getNext()); } } // Gets the size of the list public int size() { int count = 0; cur = head; while (cur != null) { cur = cur.getNext(); count++; } return count; } // Finds the value at a certain position public char getValueAt(int position) { cur = head; for (int i = 0; i < position; i++) { cur = cur.getNext(); } return cur.getData(); } // Finds the position of a certain value public int positionOf(char value) { cur = head; int position = 0; while (cur.getNext() != null) { if(cur.getData() == value) return position; cur = cur.getNext(); position += 1; } return -1; } }

/** A linked list node for our linked list */ class Node { // put all fields from Node class here private char data; private Node next; // put all methods from Node class here // Sets the node public Node() { data = 0; next = null; } // Gets the value or character from the node public char getData() { return data; } // Gets the next node in the list public Node getNext() { return next; } // Sets the data public void setData(char data) { this.data = data; } // Sets what is linked next public void setNext(Node next) { this.next = next; } }

Stack code given:

public class Stack { /** List objects to hold our stack items. Use List operations to implement the methods below */ private List list;

public Stack() { // instantiate list here

}

public void push(char value) {

}

public char pop() {

}

public char peek() {

}

public boolean isEmpty() {

} }

Queue code given:

public class Queue { /** List objects to hold our queue items. Use List operations to implement the methods below */ private List list; public Queue() { // instantiate list here

} public void enqueue(char value) {

} public char dequeue() {

}

public char front() {

}

public boolean isEmpty() {

} }

Each are in seperate codes and are called another code I just need these three codes working.

Step by Step Solution

There are 3 Steps involved in it

1 Expert Approved Answer
Step: 1 Unlock blur-text-image
Question Has Been Solved by an Expert!

Get step-by-step solutions from verified subject matter experts

Step: 2 Unlock
Step: 3 Unlock

Students Have Also Explored These Related Databases Questions!