Initially, the goal should be to learn primitive data structure concepts and usage(i.e. ints, char, strings, pointers, etc.). After that, they should learn more complex structures, like linked lists. These should be taught without referencing the built-in standard library structures. After that, simple sorting algorithms can be taught(including recursion), as well as OO concepts.
Teaching all of that in a GC language is nice, because it removes a lot of the memory management that starting out programmers always get caught up with. It lets the student concentrate more on the concepts than on tricky memory issues. That can be taught latter.