Hamid Naderiyan
Don't skip his class even if you are a strong math student. His lectures are confusing because he will gloss over examples and quickly move on, but he does try to make himself accessible with office hours. You'll probably end up teaching yourself most of the material, anyway. There are also opportunities for extra credit on the quizzes and exams.