Best way to learn any data structure is to read about it first, understand it and then dive into solving problems using that data structure!
- Segment Tree - Segment Tree is used in cases where there are multiple range queries on array and modifications of elements of the same array.
Goto problems:
- GSS1- SPOJ - EASY
- GSS3- SPOJ - EASY
- More Easy Problems - List of easy segment tree problems. Go for the medium diffculty ones once you are comfortably with easy.
- GSS4- SPOJ - MEDIUM
- BRCKTS - MEDIUM
- FREQUENT - MEDIUM
- HORRIBLE - MEDIUM
- Segment Tree with Lazy Propagation - The usual segment tree with a different(lazy) approach to updating an interval
- Help Ashu - EASY
- DQUERY - EASY
- Roy and Coin Boxes - EASY
- A Simple Task - MEDIUM
- SEGSQRSS - MEDIUM
- TorCoder - HARD
- Comrades- III - HARD
Refrences to some nice book (Free .pdf FILE) of Data Structure :