diff --git a/JAVA/.classpath b/JAVA/.classpath new file mode 100644 index 0000000..60f564f --- /dev/null +++ b/JAVA/.classpath @@ -0,0 +1,8 @@ + + + + + + + + diff --git a/JAVA/.project b/JAVA/.project new file mode 100644 index 0000000..eeb88f7 --- /dev/null +++ b/JAVA/.project @@ -0,0 +1,17 @@ + + + JAVA + + + + + + org.eclipse.jdt.core.javabuilder + + + + + + org.eclipse.jdt.core.javanature + + diff --git a/JAVA/Linked_List/LinkedList.java b/JAVA/Linked_List/LinkedList.java new file mode 100644 index 0000000..1b360b1 --- /dev/null +++ b/JAVA/Linked_List/LinkedList.java @@ -0,0 +1,114 @@ +package Linked_List; + +public class LinkedList { + //intitializing head to null + Node head = null; + //declaring a runner pointer variable + Node runner; + //declaring size variable + int size = 0; + + public void add(int data) { + Node n = new Node(); + n.data = data; + if(head == null) { + head = n; + } + else { + runner = head; + //traverse to end + while(runner.next != null) { + runner = runner.next; + } + runner.next = n; + } + size++; + } + public void insertAtBegin(int data) { + Node n = new Node(); + n.data = data; + n.next = head; + head = n; + size++; + } + public void inserAt(int data, int pos) { + Node n = new Node(); + n.data = data; + if(pos < 0 || pos > size) { + throw new IllegalArgumentException(); + } + else { + runner = head; + //traverse at 1 before pos + for(int i=0; i