Linked Lists. Or, How I Learned to Worry Even More About Coding Bootcamp.

Daniel Madariaga
4 min readJul 1, 2021

I planned on this blog to be about linked lists, a data structure that I’ve never heard of before. Granted, I am only 4 weeks into a software engineering bootcamp with very little coding exposure to begin with, so I haven’t heard of many. But, I heard of linked lists once while someone was discussing “things you should know for (coding) interviews.” So, I thought, that could be very useful to write about. Digging into the topic of linked lists I found a lot. A good amount of what I found were different sites providing the top X amount of interview questions…related JUST to this topic with which I am very unfamiliar. Queue the imposter syndrome.

alltogether.swe.org

There is a lot to fear and to stress about when it comes to going through a coding bootcamp. To begin with we are all putting our lives on hold and betting thousands of dollars on ourselves to be able to accomplish this seemingly impossible thing. And then if and when we graduate we then have to go through the grueling process of getting a job in an industry we’ve just stepped foot in. It’s scary.

It truly frightened me when it came to researching the topic of linked lists and seeing how this very well may be something I’ll be asked about in the interview process. Until now I’ve only worked with arrays and objects data structures in JavaScript. They are both very common and relatively easy to work with when it comes to the amount of code needed to do everything you need to do. But, in contrast, you can’t bracket your way into a linked list. To create a linked list you really need to write at least two components of code (not to be confused with React components): one to begin the list, and one for the elements or nodes. And if you want to work with the list in different ways, like adding or removing nodes, it takes even more intricate code. It’s overwhelming to read through.

If you haven’t heard of them before, linked lists are data structures. Similar to arrays in principle but with different advantages and disadvantages. It’s an easy concept to grasp, at first. It is a list of data pieces, called nodes, connected to one another by “pointers”. Each node has two parts, the data which is being sorted, a pointer that is basically giving you the location of the next node in the list. Check out the image below to get a better representation.

geeksforgeeks.org

Not so scary, right? Now look at the JavaScript code needed to set up a linked list with some add functionality, written by David Asamonye on Dev.to.

Setting up Node class

Setting linked list class

Creating add method

It’s a stark contrast to the visual representation and confusing to my new coder eyes.

So why? Why use them and why do we need to know them? I’m not 100 percent sure of those answers…yet. I do know this is something I will need in my arsenal of knowledge going into the interview process. It also begs the question, what else will I need to know?

I intended for this blog to be one thing but I’m shifting my focus. Linked lists scared me because I don’t know them. Also, because I might need to know about them to pass an interview and make my bootcamp journey worthwhile. I don’t know much about linked lists, but I will. I feel like I’ve never been great at interviews, mainly because I feel like I’m never prepared enough. This blog will serve as my motivation to discover and learn more, and to be more prepared. And hopefully help prepare others.

--

--

Daniel Madariaga
0 Followers

Software Engineer Student at Flatiron School