A major part of reading any text in mathematics is understanding theorems and proofs. For me, I would try to find a proof by myself before reading the one given in the text. But sometimes the proof may be too hard for me, e.g., it may involve tricks that I can never think of. So my question is:
What is the best thing to do with these "hard" proofs? When I cannot prove it myself, should I give up and read the proof given in the text, or should I leave it and try to prove it later? Or maybe there are better things to do?
To make this question more concrete (and not too soft), let me say something about my background. I only know some basic mathematical analysis and linear algebra on the freshman level, and theorems there are usually not so hard to prove. Lately I have been reading group theory, working through Rotman's An Introduction to the Theory of Groups. While this book is not difficult to understand, I found quite a few theorems that I could not prove. An example is Theorem 4.8, which states that the number of subgroups of order $p^s$ in a finite $p$-group $G$ (where $p^s\leq|G|$) is congruent to $1$ mod $p$. Another example is P. Hall's theorem on Hall subgroups. The proof is more than one page long and I have no clue about how to tackle it.
I know that there will be more and more nontrivial theorems like these as I study mathematics, therefore I am here to ask what I should do. Since I have been teaching myself all along, I don't want to get it wrong in the first place...
If this question is still too soft or vague, please let me know. And thanks for all advice!