DEV Community

Lautaro Suarez
Lautaro Suarez

Posted on

3

Linked List

Hey, let´s talk about linked Lists and what are the differences between an array and a linked list.

Linked List
A linked list is structured by objects, each object have a head and a next value.

Image description

*A linked List in javascript will look like this
*

const list = {
    head: {
        value: 1
        next: {
            value: 20                                             
            next: {
                value: 22
                next: {
                    value: 21
                    next: null  
                    }
                }
            }
        }
    }
};

Enter fullscreen mode Exit fullscreen mode

Some disadvantage that linked list have are the following.

  • It is slower because random access like in an array is not allowed.

  • It uses more memory because of the storage of the pointer

Creating a javascript class as a ListNode

class ListNode{
  constructor(data){
    this.data = data
    this.next = null
   }
}
Enter fullscreen mode Exit fullscreen mode

Crating a javascript class as a Linked List

class LinkedList{
  constructor(head = null){
   this.head = head
   }
}
Enter fullscreen mode Exit fullscreen mode

*Now we will put all it together
*

We`ll create two list nodes and then a pointer from node 1 to node 2


let node1 = new ListNode(2)
let node2 = new ListNode(5)
node1.next = node2

If we break down the code we will see that on the the first line we are defining node1 equal to a new listNode(2) where 2 is the value we are assigning to node1, then we do the same on the second line.
On the third line however we are defining the value of the node1 pointer where we are telling to it to be equal to node2.

Now we`ll create a linked list with the node1

let list = new LinkedList(node1)
Enter fullscreen mode Exit fullscreen mode

Here we are defining list to be a linked list and we are assigning it the node1 value.

Let`s try to access to it.


console.log(list.head.next.data)

It will return 5, but why?
Let`s see, when we access list.head.next we are telling it to go to the next node and the last data is to access the data when we are in a linkedList.

Thanks for reading it, i hope you found it somehow helpful.

Lautaro.

Image of AssemblyAI tool

Transforming Interviews into Publishable Stories with AssemblyAI

Insightview is a modern web application that streamlines the interview workflow for journalists. By leveraging AssemblyAI's LeMUR and Universal-2 technology, it transforms raw interview recordings into structured, actionable content, dramatically reducing the time from recording to publication.

Key Features:
🎥 Audio/video file upload with real-time preview
🗣️ Advanced transcription with speaker identification
⭐ Automatic highlight extraction of key moments
✍️ AI-powered article draft generation
📤 Export interview's subtitles in VTT format

Read full post

Top comments (2)

Collapse
 
thomasbnt profile image
Thomas Bnt

Hello ! Don't hesitate to put colors on your codeblock like this example for have to have a better understanding of your code 😎

console.log('Hello world!');
Enter fullscreen mode Exit fullscreen mode

Example of how to add colors and syntax in codeblocks

Collapse
 
lausuarez02 profile image
Lautaro Suarez

Nice, thank you.
I did not know i can put colors on my codeblocks

Billboard image

The Next Generation Developer Platform

Coherence is the first Platform-as-a-Service you can control. Unlike "black-box" platforms that are opinionated about the infra you can deploy, Coherence is powered by CNC, the open-source IaC framework, which offers limitless customization.

Learn more

👋 Kindness is contagious

Explore a sea of insights with this enlightening post, highly esteemed within the nurturing DEV Community. Coders of all stripes are invited to participate and contribute to our shared knowledge.

Expressing gratitude with a simple "thank you" can make a big impact. Leave your thanks in the comments!

On DEV, exchanging ideas smooths our way and strengthens our community bonds. Found this useful? A quick note of thanks to the author can mean a lot.

Okay