## title: My algorithms and data structures journey
       ## date: "2025-11-03"
       
       ## Introduction
       
       At the end of 2023, during the month of December, I decided
       to do the Advent of Code puzzles. As I thought about these
       algorithmic puzzles, I realized that I lacked knowledge. I
       could solve the problems, but mostly intuitively. I went
       until day 19 and then stopped for lack of motivation, but I
       wanted a slightly more rigorous approach with a more solid
       theoretical basis.
 (HTM) Advent of Code
 (HTM) until day 19
       
       My goal is not to become an expert in algorithms and data
       structure. Rather, I want to be more relevant in their
       implementation in real needs and have a better algorithmic
       reading on IT projects.
       
       ## Searching for learning resources
       
       I've been looking for resources on the Internet that could
       give me a solid grounding in the basics of algortihmics and
       data structure, but also in algorithmic problem solving. I
       want to be more efficient on certain projects like the
       Advent of Code.
 (HTM) Advent of Code
       
       ### First iteration
       
       The first training course I found was from neetcode.io,
       which unfortunately didn't suit my way of learning. It was
       mainly videos with someone explaining technical concepts on
       a digital whiteboard. It was roughly composed as follows:
       first there was the theory, then examples with use cases,
       and LeetCode links to problems to put the theory into
       practice.
 (HTM) neetcode.io
 (HTM) LeetCode
       
       I progressed by about 75% on the beginners' course and
       quickly left the advanced algorithms course, which didn't
       meet my needs. I went on to pursue my other projects and put
       algorithms and data structures on the back burner.
       
       It wasn't until the end of 2024 that I got back into it with
       the Advent of Code 2024 which I fully completed.
 (HTM) Advent of Code 2024
 (HTM) fully completed
       
       ### Final iteration
       
       Shortly afterwards, I decided to look for a new course. In
       my search I came across LeetCode's. In my opinion, it's the
       perfect resource! All the essential terms and fundamentals
       are clearly defined, there are partial exercises and quizzes
       to check your understanding of the course. I'd recommend it
       to anyone who wants to improve or practice their algorithmic
       skills.
 (HTM) LeetCode's
       
       This resource has given me a solid grounding in algortihm
       theory, data structures and their uses. I took notes based
       on it in French.
 (HTM) notes based on it
       
       ## The results
       
       I've become better at this discipline than I was before, and
       it's very useful.
       
       It allows me to be more relevant in writing and reading
       professional and personal computer code. My brain will
       naturally think of mechanisms and concepts that it knows and
       has memorized. For example, many times I've seen AI-generated
       code that wasn't optimized, even on small blocks of code.
       I've also had the opportunity to optimize execution times on
       professional projects.
       
       ## Conclusion
       
       I think anyone working in tech should have a good grounding
       in algorithms, especially computer developers. It's
       essential for understanding how the machine works and being
       technically relevant. It helps avoid obvious problems in
       production, such as over-consumption of CPU or memory.
       
       Learning algorithms and data structures is time well spent,
       and will always be useful.