Being a C++ nerd, I have to correct: std::map has logarithmic access complexity (mandated by the standard, e.g. see cppreference). If you're looking for a constant complexity data structure, the 'hashmap' is std::unordered_map.
Thank you, well pointed out! I haven't noticed I considered the map's access operation to be done in O(1) (in the Maps presentation photo). As you've highlighted the logarithmic complexity, maps are indeed implemented using self-balancing trees (mentioned it in the properties). Going to fix my mistake.
Nice post, If you don't mind, I'm going to use some of your content to write an article on devban.com/. Of course, with respect to copyrights and mentioning you as one of the sources.
Coding for 20 years | Working for startups for 10 years | Team leader and mentor | More information about me: https://thevaluable.dev/page/about/
Twitter: @Cneude_Matthieu
Great overview of the core data structures and algorithms. I especially like how the article connects each concept to real-world use cases instead of focusing only on theory. This is a useful reference for developers preparing for interviews or strengthening their problem-solving skills.
For more programming resources and developer-focused content, check out codecan.net.
Hei Iulia, amazing work and I've grateful to you for it.
I think you have a small miss-calculation at chapter 5 Maps & Hash Tables, there are only 1440 minutes in a day otherwise you meant something else by the 3600 minutes.
Huh, someone's missed their Maths classes 😂 . Thanks for reporting such errors! It's pretty hard to review such a big volume of information and readers' support is essential!
Well-written article! I see a white-grey-black tree is quite similar to an AVL. Thanks for the suggestion! I will definitely consider adding it into a new article.
A gigantic work.
Being a C++ nerd, I have to correct:
std::maphas logarithmic access complexity (mandated by the standard, e.g. see cppreference). If you're looking for a constant complexity data structure, the 'hashmap' isstd::unordered_map.Thank you, well pointed out! I haven't noticed I considered the map's access operation to be done in O(1) (in the Maps presentation photo). As you've highlighted the logarithmic complexity, maps are indeed implemented using self-balancing trees (mentioned it in the properties). Going to fix my mistake.
Amazing compilation, congrats!
I think this article is a natural continuation of yours, where I show many problems that can be solved with these data structures and algorithms.
Definitely! Congrats, well-chosen techniques!
I am brushing up my DSA skills again recently, and this is really useful. Appreciate the huge effort. 🔥💯
I'm no expert on this, so I may be mistaken, but I believe there's a mistake in your Binary Search Tree diagram.
Shouldn't the 20 be to the left of the 21, rather than the left of the 38?
Oh, I'm so sorry! It was a typo. It was 30 instead of 20 in my initial thread. Thank you for noticing! Fixed it! :)
You are right. Everything to the right of 21 should be greater (or equal to, if the tree contains duplicates) than 21.
Good catch!
Wonderful piece of art Lulia :) Thanks for sharing. Really need time to digest this. :)
Good stuffs, thanks for the effort.
Nice post, If you don't mind, I'm going to use some of your content to write an article on devban.com/. Of course, with respect to copyrights and mentioning you as one of the sources.
Holy cow. That's an impressive article. I'm curious: did you learn all of that by yourself or did you do some CS studies?
Thank you! Focusing on DSA was a must because I took part in the National Olympiad in Informatics in high school, and it was definitely worth it :) .
This is incredibly useful. Thanks for this!
This is really great, lots of stuff I've never heard of before. How did you create the diagrams?
Thanks! I use Adobe Spark.
Great overview of the core data structures and algorithms. I especially like how the article connects each concept to real-world use cases instead of focusing only on theory. This is a useful reference for developers preparing for interviews or strengthening their problem-solving skills.
For more programming resources and developer-focused content, check out codecan.net.
Hei Iulia, amazing work and I've grateful to you for it.
I think you have a small miss-calculation at chapter 5 Maps & Hash Tables, there are only 1440 minutes in a day otherwise you meant something else by the 3600 minutes.
Huh, someone's missed their Maths classes 😂 . Thanks for reporting such errors! It's pretty hard to review such a big volume of information and readers' support is essential!
I came across a nice special tree algorithm, maybe it could fit into your list
levelup.gitconnected.com/the-white...
Well-written article! I see a white-grey-black tree is quite similar to an AVL. Thanks for the suggestion! I will definitely consider adding it into a new article.
That was quite thorough.. especially the algorithms section
Thanks...!
I really liked reading this, but if I am not mistaken the worst time complexity of BST for insertion, deletion and searching is
O(n)and notO(log n).Thank you for organizing and presenting the information very well!
May I translate your article to Spanish and add a link to it please?
Sure, that would be a great idea! I kindly ask you to give me credits and let me know when it is done :)
You don't need pre-image resistance for a Map's hash function, that's a cryptographic hash.
I liked your post, if anyone want to learn data structures, here is a good opportunity you should check out-
geeks-terrace.blogspot.com/2020/11...
Use this link leetcode.com/tag/hash-table/ for practices Hash Table.