aboutsummaryrefslogtreecommitdiffstats
path: root/src/datastructures/linkedlists/SinglyLinkedList.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/datastructures/linkedlists/SinglyLinkedList.java')
-rw-r--r--src/datastructures/linkedlists/SinglyLinkedList.java124
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'