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! and the last part practice and practice
-
Segment Tree - Segment Tree is used in cases where there are multiple range queries on array and modifications of elements of the same array.
Problems:
- GSS1- SPOJ - Easy
- GSS3- SPOJ - Easy
- GSS4- SPOJ - Medium
- BRCKTS - Medium
- FREQUENT - Medium
- HORRIBLE - Medium
- Easier Problems - List of easy segment tree problems. Go for the medium diffculty ones once you are comfortably with easy.
-
Segment Tree with Lazy Propagation - The usual segment tree with a different(lazy) approach to updating an interval
Problems:
- Help Ashu - Easy
- DQUERY - Easy
- Roy and Coin Boxes - Easy
- A Simple Task - Medium
- SEGSQRSS - Medium
- TorCoder - Hard
- Comrades- III - Hard
- Hash Table-Problems- A good question on implementaion of hashing from hackerearth.
Refrences to some nice book (Free .pdf FILE) of Data Structure :
3. [“Problem Solving with Algorithms and Data Structures using Python” By Brad Miller and David Ranum, Luther College.] (https://interactivepython.org/runestone/static/pythonds/index.html)