1. Books
2. Websites
3. Classroom courses
=====Books
=====
There are a dozen or so books in the market.
The two most popular books (and well written also) are:
1. Cracking the Code Interview
2. Elements of Programming Interviews
========Websites
========
Websites are roughly divided into two groups:
a. Where you can write code and compare yours with others' solutions
Popular ones, in no particular order, are:
http://uva.onlinejudge.org/(UVA Online Judge)
https://projecteuler.net/ (Project Euler)
Note that not all of them have questions that are interview oriented. But it's great practice regardless.
b. Ones that give you a problem and then a solution, with no or little competitiveness
Popular ones, are:
=============================
Classroom courses / Bootcamps
=============================
http://InterviewKickstart.com (I run this one)
Having said that, realize that you are not alone. Most programmers these days don't use fancy data-structures and algorithms at work.
But unfortunately, interviews still ask for it. That is a whole debate on its own.