Skip to main content

LinkedList Creation and Traversal | Java | MyCodingNetwork

How to Create and Traverse a Linked List without using Java collection frameworks?

Linked lists are an essential data structure in computer science, providing an efficient way to store and manage data. In Java, the LinkedList class in the Java Collections framework is widely used for this purpose. However, in this blog post, we will explore how to create a LinkedList from scratch using a custom class, without relying on the built-in Java Collections.

 

Algorithm:

1.            Define a Node class that represents individual nodes in the list. Each node contains data and a reference to the next node in the sequence.

2.            To add elements to the LinkedList, we will create an object of the Node class and assign a value of the node to its constructor. Its syntax is: Node newNode = new Node(value);

3.            To traverse the LinkedList, we'll create a traverse( ) function start from the head node and keep moving to the next node until we reach the end (i.e., the next node is null).

Source Code:

 


Output:

 


Theory:

In the above code, there are two classes Node and LL are created.

1.            Node class contains two instance variables, next and data. The ‘data’ variable stores the value of a node and the next variable is used to store a reference to the next node.

2.            LL class contains a main( ) function which has been used to create a linked list of three nodes, (namely, node1, node2 and node3). These nodes are linked together using the next field. The head variable is assigned with the first node, here, node1. Now, the traverse() function can then be called by passing the head of the node as the formal parameter.

3.            The traverse() method starts by initializing the cur variable with the head of the node. It then enters into a while loop which terminates when current reaches null. Inside the loop, we have a print statement, for printing the value that is data of the current node, that is, cur. After this, the cur variable is updated to the next node of the linked list. This process continues till the loop reaches its termination. Thus, we get the output.

Video reference:



Hope you liked this explanation, for any feedback or doubt you can comment down in the comment section.

 

Popular posts from this blog

Exploring Uninformed Search in Artificial Intelligence: Basics and Applications

  In artificial intelligence (AI), search algorithms are essential for solving a variety of problems, from navigating a maze to scheduling tasks. Uninformed search, also known as blind search, is a fundamental category of search techniques where the algorithm has no additional information about the states beyond what is provided in the problem definition to guide the search. This page delves into the basics of uninformed search algorithms, their types, and their applications in AI. Understanding Uninformed Search Uninformed search algorithms explore the search space without any guidance on which paths might lead to the goal more efficiently. They rely solely on the information available from the initial problem setup, such as the start state, goal state, and possible actions. This approach contrasts with informed search algorithms, which utilize heuristics to make more educated guesses about the best path to take. Types of Uninformed Search Algorithms   Several uninformed se...

Artificial Intelligence Playlist

Here's a playlist specifically dedicated to Artificial Intelligence. Make sure to follow it, as a whole lot of new AI videos coming up... 1. Concept of State in AI 2. Uninformed Search in AI 3. Breadth First Search | Part 1 4. Breadth First Seach | Part 2 | Algorithm & Working and many more to come...

Print a Linked List in Reverse Order | Linked List | Java | MyCodingNetwork

  Print a Linked List in Reverse Order After mastering the four standard operations on a Linked List - Creation, Traversal, Insertion, and Deletion - we will now proceed to the next topic: ' Printing a Linked List in Reverse Order '. It serves as a continuation of our previous discussions. We will build upon the topics and ideas that we have previously explored to further our understanding about Linked List. We 'll be using recursive approach for the implementation. For this a separate recursive function would be needed. Concept of stack is also implemented for print statement. Let's discuss the algorithm for the same: Algorithm: Create a function printReverse() , which takes 'head ' of the Linked List as the parameter. Take a temporary node ' cur ' and assign it with the head of the list. Create a base case which checks if cur==null . If base case is TRUE, then function would return . If base case is FALSE, then the statements following that base case ...