Assays into Algorithms and Data Structures; My First Stab at It

Gabriel Chazanov
3 min readJul 6, 2021

If you are reading this then welcome to the first piece of an ongoing run of posts I will be doing about my journey into the world of algorithms and data structures. I recently graduated from Flatiron School, and while I learned a great deal about web development using Ruby and React, a large gap was left in my knowledge. A gap in the approximate shape of data structures and algorithms. In each of the ongoing blogs I will be writing up a bit of what I learned in a hopefully concise and helpful manner so that those who came after me can pick some helpful thoughts from a breezily scripted primer.

Firstly, let’s talk about what exactly a data structure and an algorithm are.

First the data structure. Obviously a data structure is a structure that holds data. What exactly does that mean? Let’s break it down into two parts.

First: Data. Data could be anything. A list of names, numbers, nefarious nobodies. Thousands of servers are maintained all around the world just to maintain this very precious resource. It’s the building block of modern society as we know it. The whole internet is basically a large pipeline carrying around all the data in the world. The thing is, given the massive amounts of data floating around, there need to be systems to organize all of it. That’s what a data structure is.

Now what about the structure? We organize our clothes in a specific way that fits how we expect to use them. Underwear on the top drawer because it’s used the most often, pants on the bottom because who wears pants? Data structures are basically different ways to organize data, AKA the clothes of the internet. Depending on how the data is going to be used, there are different ways to organize it so that the pertinent data can be accessed in a way that makes sense, and is as fast as possible. With the massive amount of data being carted around the internet, speed is incredibly important. Even a difference of a millisecond per transaction can mean mountains of time over the long haul.

The other half of these two vaunted computer science skills is the algorithm. Algorithms, like data structures, are there to deal with data in efficient ways, albeit in a more active manner. Whereas we use data structures to store out metaphorical digital clothes, we would use an algorithm to put on those very same digital clothes. Algorithms can be as simple as altering data points when they are stored, and as complex as determining the best way to launch a drone to Mars. Like data structures, algorithms are ranked and graded by speed. Counting every element in an array multiple times to find whatever you’re looking for might theoretically work, but the load it would incur on whatever was computing the algorithm would be unnecessarily high.

And there’s a simple breezy explanation of what exactly people mean when they say data structures and algorithms. Join me next week when I make my first foray into that digital jungle of data structures with the very basic, nodes and linked lists.

--

--

Gabriel Chazanov

He/Him; Full Stack software developer who’s always striving to learn