Singly Linked List Structure šŸŽÆ

beginner
7 min

Singly Linked List Structure šŸŽÆ

Welcome to our deep dive into the world of Data Structures and Algorithms! Today, we'll be exploring the Singly Linked List, a fundamental data structure in Computer Science.

What is a Singly Linked List? šŸ“

A Singly Linked List is a collection of data elements, called nodes, connected in a linear sequence. Each node consists of a data part and a reference part, where the reference part points to the next node in the sequence. This data structure is called "singly" linked because each node has only one reference or "link" to the next node.

Creating a Node šŸ’”

Let's start by creating a Node. In JavaScript, our Node structure might look like this:

javascript
class Node { constructor(data) { this.data = data; this.next = null; } }

In this code, we define a Node class that takes data as an argument and initializes the data and next properties. The next property is initially set to null, indicating that this is the last node in the list.

Linking Nodes āœ…

To create a Singly Linked List, we need to link our nodes together. Here's how we can do that:

javascript
let head = new Node("head"); let one = new Node(1); let two = new Node(2); let three = new Node(3); head.next = one; one.next = two; two.next = three;

In this example, we create four nodes: head, 1, 2, and 3. We then link them together by setting the next property of each node to the next one in the sequence. The head node serves as the starting point of our Singly Linked List.

Traversing a Singly Linked List šŸ’”

To traverse a Singly Linked List, we start from the head node and follow the next pointers until we reach the end of the list. Here's how we can implement a function to traverse our list:

javascript
function traverseList(head) { let current = head; while (current !== null) { console.log(current.data); current = current.next; } }

In this function, we start with a variable current set to the head of the list. We then enter a loop that continues as long as current is not null. Inside the loop, we print the data of the current node and move to the next node by assigning the value of current to current.next.

Quiz šŸ“

Question: What is the main difference between a Singly Linked List and an Array?

A: They have the same data structure B: Each node in a Singly Linked List has only one link, while each element in an Array has multiple links C: They can't be used interchangeably

Correct: B

Explanation: Unlike arrays, each node in a Singly Linked List has only one link to the next node, whereas each element in an array has multiple links (indexes) to other elements in the array.

That's it for today! In our next lesson, we'll dive deeper into Singly Linked Lists, discussing common operations like inserting and deleting nodes. Until then, happy coding! šŸš€