-
Notifications
You must be signed in to change notification settings - Fork 1.9k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Like arrays, Linked List is a linear data structure. Unlike arrays, linked list elements are not stored at the contiguous location, the elements are linked using pointers as shown below. linkedlist In Java, LinkedList can be represented as a class and a Node as a separate class. The LinkedList class contains a reference of Node class type.
- Loading branch information
1 parent
b3fdcf9
commit 65a9a58
Showing
1 changed file
with
93 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,93 @@ | ||
import java.io.*; | ||
|
||
// Java program to implement | ||
// a Singly Linked List | ||
public class LinkedList { | ||
|
||
Node head; // head of list | ||
|
||
// Linked list Node. | ||
// This inner class is made static | ||
// so that main() can access it | ||
static class Node { | ||
|
||
int data; | ||
Node next; | ||
|
||
// Constructor | ||
Node(int d) | ||
{ | ||
data = d; | ||
next = null; | ||
} | ||
} | ||
|
||
// Method to insert a new node | ||
public static LinkedList insert(LinkedList list, int data) | ||
{ | ||
// Create a new node with given data | ||
Node new_node = new Node(data); | ||
new_node.next = null; | ||
|
||
// If the Linked List is empty, | ||
// then make the new node as head | ||
if (list.head == null) { | ||
list.head = new_node; | ||
} | ||
else { | ||
// Else traverse till the last node | ||
// and insert the new_node there | ||
Node last = list.head; | ||
while (last.next != null) { | ||
last = last.next; | ||
} | ||
|
||
// Insert the new_node at last node | ||
last.next = new_node; | ||
} | ||
|
||
// Return the list by head | ||
return list; | ||
} | ||
|
||
// Method to print the LinkedList. | ||
public static void printList(LinkedList list) | ||
{ | ||
Node currNode = list.head; | ||
|
||
System.out.print("LinkedList: "); | ||
|
||
// Traverse through the LinkedList | ||
while (currNode != null) { | ||
// Print the data at current node | ||
System.out.print(currNode.data + " "); | ||
|
||
// Go to next node | ||
currNode = currNode.next; | ||
} | ||
} | ||
|
||
// Driver code | ||
public static void main(String[] args) | ||
{ | ||
/* Start with the empty list. */ | ||
LinkedList list = new LinkedList(); | ||
|
||
// | ||
// ******INSERTION****** | ||
// | ||
|
||
// Insert the values | ||
list = insert(list, 1); | ||
list = insert(list, 2); | ||
list = insert(list, 3); | ||
list = insert(list, 4); | ||
list = insert(list, 5); | ||
list = insert(list, 6); | ||
list = insert(list, 7); | ||
list = insert(list, 8); | ||
|
||
// Print the LinkedList | ||
printList(list); | ||
} | ||
} |