breadth vs depth and time management in undergraduate math education For the sake of time, is it bad to just accept some fast paced class's theorem's (such as MIT's algebra class) as true even if you don't completely understand the proof or can't remember the proof off top of your head (after a while has passed?). I often find myself wasting too much time trying to memorize proofs when that's not the point of the class (and I can actually wait to memorize the proof later). Sometimes, I get caught up in one detail of the proof for hours and end up not having time to learn how to actually use the theorem and do the homework. Also, is it bad to gain a complete and working understanding of something after you take the class. I am not mentally capable of fully absorbing both what the class want's us to get and thinking about it enough to have a complete and sufficiently deep understanding of the subject all in one semester. However, I feel bad if I wait to think deeply about the class material until after the course is done, but I simply don't have enough time to fully understand some things during the semester. I always hear this advice on making sure you understand everything when you are studying to practice/do mathematics, but that seems not practical if you are taking four or more classes and struggling to make sure you understand what you need to for your other classes have other obligations to attend to.(and also if English is not your first language). I feel like a lot of the advice I hear is for native English speakers (I came to the U.S. when I was four, so I'm practically a native English speaker, but not when it comes to understanding things well the first time through in math, or at least making the understand be thorough by a native English speaker's standards.)
The reason I ask this is because I can't say I fully understand something in English unless I can explain the proof verbally/descriptively to someone.
 A: At least for me, starting by trying to solve the homework questions, even if I hadn't fully grasped some proofs (or even full grasped the concepts involved) usually worked out better than trying to understand everything first and only then starting with the homework problems.
As long as I found a solution (where found means found it myself, though. I tried not to look it up before I hadn't spent considerable time pondering it), I wouldn't worry too much whether I understood all the theory - I just made sure I understood enough to see why this one solution worked.
At the end of the semester, before the final exam, I'd review all the theory. Only then did I strive to really get to the bottom of things. Quite often, concepts of proofs which had initially seemed inscrutable, suddenly seemed simple. It was often the insight I had gained later on during the course which helped me understand some of the concepts introduced earlier.
Also, I think it helps to try to understand the concepts first, and deal with the technicalities of the proofs later. Before working through a proof line-by-line, try to understand why the statement it proves is true. Once you have an idea of why something it's true, it's often much easier to understand the proof. 
I must admit that for some courses, linear algebra in particular, I lot of things were a bit mysterious to me even after my final exam though. It was only when I learned functional analysis years later that I finally got to the bottom of them. Somehow, dealing with infinite-dimensional spaces and all the issues they can cause suddenly made the finite-dimensional case much easier to reason about.
