http://www.youtube.com/watch?v=QMV45tHCYNI
CS 61B: Data Structures - Fall 2006
Instructor: Jonathan Shewchuk
Fundamental dynamic data structures, including linear lists, queues, trees, and other linked structures; arrays strings, and hash tables. Storage management. Elementary principles of software engineering. Abstract data types. Algorithms for sorting and searching. Introduction to the Java programming language.
Also you can read this book for Algorithms..
http://www.amazon.com/Data-Structures-Algorithms-Made-Easy/dp/1466304162