Finish the following programs. Given the definition of SListNode: public class SListNode extends ListNode { protected SListNode next; //next references the next node in the SList. SListNode(Object i, SList l, SListNode n) { item = i; myList = l; next = n; } // Ignore other methods in this exam. We don't use them. … } Finish the definitions of a constructor, prev(), newNode(), insertFront(), front(), back(), toString() methods of the SList class. Note: SListNode and SList implement a singly-linked list by inheriting from ListNode class and List class, respectively. Whenever a SListNode is needed to be created, use newNode() method defined in SList class rather than calling the SListNode constructor directly. public class SList extends List {
Finish the following programs.
- Given the definition of SListNode:
public class SListNode extends ListNode {
protected SListNode next; //next references the next node in the SList.
SListNode(Object i, SList l, SListNode n) {
item = i; myList = l; next = n; }
// Ignore other methods in this exam. We don't use them. …
}
Finish the definitions of a constructor, prev(), newNode(), insertFront(), front(), back(), toString() methods of the SList class.
Note:
- SListNode and SList implement a singly-linked list by inheriting from ListNode class and List class, respectively.
- Whenever a SListNode is needed to be created, use newNode() method defined in SList class rather than calling the SListNode constructor directly.
public class SList extends List {
protected SListNode head;
protected SListNode tail;
//You need to write a constructor for SList with no parameters.
public SList() {
}
// newNode() calls the SListNode constructor to create new node.
protected SListNode newNode(Object item, SListNode next) {
}
//insertFront() inserts an item at the front of this SList.
public void insertFront(Object item) {
}
//insertBack() inserts an item at the back of this SList.
public void insertBack(Object item) {
}
//front() returns the node at the front of this SList.
public ListNode front() {
if (head == null) {
SListNode node = newNode(null, null);
node.myList = null; return node;
} else {
____________________________; }
}
//back() returns the node at the back of this SList.
public ListNode back() {
if (tail == null) {
// Create an invalid node.
SListNode node = newNode(null, null);
node.myList = null; return node;
} else {
____________________________; }
}
//print out each item in the list in the form of "[ 1 2 3 4 … n ]", assuming the items in the SList are of type Integer, and their coresponding integer value are 1,2,3,…n, respectively.
public String toString() {
}
Step by step
Solved in 2 steps with 2 images