These are coursed that I took and recommend: CS50 - Introduction to computer science (Online and free).