As a self-taught programmer I always struggle with some programming concepts or algorithms. It might be something super simple or super complex, but the struggle is there.
Now I started to learn Computer Science properly and one of the things that I made is simple merge sort algorithm. The idea is very simple, but the coding with recursion is a bit confusing.And all the tutorials and articles are super confusing as well. And since I'm understanding and knowing how it works now - going to explain it better than anyone else. At least for myself.
I'm going to code is C, because it's very representative of what's happening.
image is from GeeksForGeeks.