Why should you know about data structures and algorithms? Something that no one has told you for many years.

Why should you know about data structures and algorithms? Something that no one has told you for many years.

Daily short news for you
  • swapy is a library that helps you create drag-and-drop actions to easily swap the positions of components.

    The library supports a wide range of platforms, making it perfect for building something personalized like a user’s Dashboard.

    » Read more
  • After waking up, I saw the news feed flooded with articles about Microsoft rewriting the TypeScript compiler - tsc in Go, achieving performance that is 10 times faster than the current one. Wow!

    But when I saw this news, the question immediately popped into my head: "Why not Rust?" You know, the trend of rewriting everything in Rust is hotter than ever, and it’s not an exaggeration to say that it's sweeping through the rankings of previous legacy tools.

    What’s even more interesting is the choice of Go - which supposedly provides the best performance to date - as they say. Many people expressed disappointment about why it wasn’t C# instead 😆. When something is too famous, everything is scrutinized down to the smallest detail, and not everyone listens to what is said 🥶

    Why Go? #411

    » Read more
  • I read this article Migrating Off Oh-My-Zsh and other recent Yak Shavings - the author essentially states that he has been using Oh-My-Zsh (OMZ) for a long time, but now the game has changed, and there are many more powerful tools that have come out, so he realizes, oh, he doesn't need OMZ as much anymore.

    I also tried to follow along because I find this situation quite similar to the current state. It was surprising to discover something new. I hope to soon write a post about this next migration for my readers 😁

    » Read more

The Issue

Data structures and algorithms are one of the first subjects for IT students. I don't know how others feel when they first encounter algorithm, but for me, it feels like writing a list. I'm not going to hide it, before being a student, I also had "programming" if-else, array, and object, but I didn't understand why I had to write algorithms on paper like this. It was only later that I realized that algorithms are the root of logical thinking in programming. Writing algorithms in a step-by-step style is actually training your thinking ability.

However, I have noticed that some people, even colleagues, still have some hesitation when it comes to data structures and algorithms. For them, algorithms seem like something high and truly complex that they can't understand, and they have no idea how they are applied in their work even though they use them daily! Thinking like this inadvertently undermines their self-esteem and creates a fear whenever they have to face it. Instead, why not set aside this fear and face it to see what data structures and algorithms are actually about?

What are Data Structures and Algorithms?

According to technical documentation, an algorithm is a finite set of well-defined instructions that can be executed by a computer, usually to solve a class of problems or perform a calculation. Algorithms are always clear and explicitly state how to perform operations, process data, make automated inferences, and other tasks.

On the other hand, a data structure is a defined way of organizing and storing data in a sorted manner to make a process more manageable.

The simplest example of an algorithm is "Calculate the sum of natural numbers from 1 to n":

Initialize sum = 0
For each natural number x in the range from 1 to n:  
    Add x to sum
Sum is the result

It can be said that data structures contribute to the creation of algorithms because algorithms need data structures to store data. There are many data structures created to serve various storage purposes, accessibility, and memory usage. Choosing the appropriate data structure for an algorithm improves its efficiency. Therefore, we need to further study data structures to enhance the application of algorithms in the future.

Why Should You Know About Data Structures and Algorithms?

Why should you know about data structures and algorithms?

Algorithms are still present in the lines of code we write every day. Every logic you write is the result of an algorithm, and they can differ among programmers. This creates differences in coding style as well as programming performance.

Being interested in algorithms helps in training logical thinking in programming. In programming, there are many ways to solve a problem, and these differences can be reflected in performance. Some problem-solving methods are very effective, while others are not. Knowing multiple algorithms helps improve problem-solving speed and efficiency. We know which algorithm to apply in a specific case or even combine them to create a more optimal algorithm.

When choosing a tool, understanding the algorithm it applies or implements helps connect it with existing knowledge, enabling faster mastery of the tool. For example, if you are looking for a text search tool, there are many tools that can do that, and they apply different search algorithms. Knowing the different algorithms and the search scenarios you want will help you choose the most suitable tool.

Widely recognized and popular algorithms are focused on optimizing computer resources such as memory or processing power. Choosing an existing algorithm or writing a new one based on them appropriately helps optimize memory, thereby enhancing processing performance.

Especially in the current AI technology revolution, the algorithms of technology giants have and are dominating many aspects of the world. It can be seen that algorithms have infiltrated into the daily lives of everyone. Equipping yourself with knowledge of data structures and algorithms helps you adapt to this world more quickly. Who knows, one day the algorithm you write may also contribute to changing the world?

Premium
Hello

5 profound lessons

Every product comes with stories. The success of others is an inspiration for many to follow. 5 lessons learned have changed me forever. How about you? Click now!

Every product comes with stories. The success of others is an inspiration for many to follow. 5 lessons learned have changed me forever. How about you? Click now!

View all

Subscribe to receive new article notifications

or
* The summary newsletter is sent every 1-2 weeks, cancel anytime.

Comments (1)

Leave a comment...
Avatar
Trịnh Cường2 years ago
Rất hay bạn ơi
Reply
Avatar
Xuân Hoài Tống2 years ago
Bạn Cường rút ra được bài học gì không ạ?