diff options
Diffstat (limited to 'src/datastructures/linkedlists/SinglyLinkedList.java')
-rw-r--r-- | src/datastructures/linkedlists/SinglyLinkedList.java | 124 |
1 files changed, 2 insertions, 122 deletions
diff --git a/src/datastructures/linkedlists/SinglyLinkedList.java b/src/datastructures/linkedlists/SinglyLinkedList.java index 137736c..50814c6 100644 --- a/src/datastructures/linkedlists/SinglyLinkedList.java +++ b/src/datastructures/linkedlists/SinglyLinkedList.java @@ -35,126 +35,6 @@ package datastructures.linkedlists; * @param <T> The value stored in the structure */ public class SinglyLinkedList<T> -{ - /** - * Node for the list - */ - public class Node - { - /** - * Constructor - * - * @param value The value to store in the list - */ - private Node(T value) - { - this.value = value; - } - - - - /** - * The value stored in the list by this node - */ - public T value; - - /** - * The next node in the list - */ - public Node next = null; - - } - - - - /** - * The first node in the list - */ - public Node head = null; - - /** - * The last node in the list - */ - public Node tail = null; - - - - /** - * Insert a value in the beginning of the list - * - * @param value The value to insert - * @return The node that has be created and inserted - */ - public Node insertBeginning(T value) - { - Node node = new Node(value); - node.next = this.head; - if (this.head == null) - this.tail = node; - this.head = node; - return node; - } - - /** - * Remove the node at the beginning of the list - * - * @return The node that has been removed - */ - public Node removeBeginning() - { - Node node = head; - if (node != null) - head = head.next; - if (this.tail == node) - this.tail = null; - return node; - } - - /** - * Insert a value after a specified, reference, node - * - * @param value The value to insert - * @param predecessor The reference node - * @return The node that has be created and inserted - */ - public Node insertAfter(T value, Node predecessor) - { - Node node = new Node(value); - node.next = predecessor.next; - predecessor.next = node; - if (this.tail == predecessor) - this.tail = node; - return node; - } - - /** - * Remove the node after a specified, reference, node - * - * @param predecessor The reference node - * @return The node that has been removed - */ - public Node removeAfter(Node predecessor) - { - Node node = predecessor.next; - if (node == null) - predecessor.next = node.next; - if (this.tail == node) - this.tail = predecessor; - return node; - } - - /** - * Insert a value in the end of the list - * - * @param value The value to insert - * @return The node that has be created and inserted - */ - public Node insertEnd(T value) - { - if (this.tail == null) - return insertBeginning(value); - return insertAfter(value, this.tail); - } - -} +£>export with_tail=1 +£>gpp -s £ < src/datastructures/linkedlists/template | sed -e '/^[/ ]\*/d' |