http://www.cosc.canterbury.ac.nz/mukundan/dsal/appldsal.html
Focus on learning these in pseudocode, not Java.
SL
- Stack and Queue (static ie array-based)
- Linear and binary search of array
- Bubble sort
- Selection sort
HL
- The SL stuff
- Dynamic implementations of stack, queue
- Linked list (obviously)
- Binary tree
Also worth looking at recursion stuff and some of the harder sorting algorithms