How to learn about trees (binary search trees)
I am trying to read up on trees (as data structures in programming), and get comfortable with implementing them (mainly to use for contest problems, and also because I'm very interested).

But the variety in this field is overwhelming, and I don't know where to start. For example, we have regular BST's, then AVL trees, B-trees, red black trees, interval and segment trees, etc.

There are some tutorial type resources on the net, but most give code directly, without showing the intuition behind it. I want to develop a general understanding of trees, so that I don't need to go through each and every query and update algorithm code of each and every variation, and still be able to code them when needed.

It certainly isn't feasible to memorise each and every such code for each and every such variation. I'd also like to know which of these variations and more prominent and in use.

So how do I go about doing this? Suggestions on online resources, books, learning approach, learning methods, are all welcome.
How to learn about trees (binary search trees)
===

I am trying to read up on trees (as data structures in programming), and get comfortable with implementing them (mainly to use for contest problems, and also because I'm very interested).

But the variety in this field is overwhelming, and I don't know where to start. For example, we have regular BST's, then AVL trees, B-trees, red black trees, interval and segment trees, etc.

There are some tutorial type resources on the net, but most give code directly, without showing the intuition behind it. I want to develop a general understanding of trees, so that I don't need to go through each and every query and update algorithm code of each and every variation, and still be able to code them when needed.

It certainly isn't feasible to memorise each and every such code for each and every such variation. I'd also like to know which of these variations and more prominent and in use.

So how do I go about doing this? Suggestions on online resources, books, learning approach, learning methods, are all welcome.