Generic elementary group theory problems. This question is about generic group theory problems. here are examples for what I’m referring to:


  Prove that any group of order $p^2$, where $p$ is a prime, is
  abelian.





  Let $G$ be a group of order $2n$. Suppose that half of the elements
  of $G$ are order $2$, and the other half form a subgroup $H$ of order
  $n$. Prove that $H$ is of odd order ($n$ is odd) and that it's
  abelian.





  "Let $G$ be a group with $|G|=pq$ for some $p$, $q$ primes such that
  $p&gt;q,q∤p−1$. Prove $G$ is cyclic."




Most of the time I find myself attacking these kind of problems with no coherent strategy, just throwing all my ammunition (Cauchy theorem, Lagrange theorem, index 2 theorem, intersection unions and multiplication of (normal-) subgroups etc.).

Best case scenario is I manage to prove the statement yet I don't quite get why the statement is true because the proof is so long and involves a lot of cases and assumptions by contradiction that i can't see the forest for the trees.

A lot of the times there are more than one way to prove the statement which are not so similar. 

For an excellent example to what I’m referring to, look here.

Since I feel that most of the time I’m just juggling variables I'd like to know what should i do to understand what's really going on?

Another different thing that might ease my mind is an exhaustive list of the theorems that can be used to solve these kind of problems. That way i will at least know what are all the possible techniques that might work for these problems.

ADDED: Although neat proofs for the specific problems i posted are welcome they are not the reason i asked this question. I solved these problems and others too yet my proofs were long and lacked an identifiable idea. What I'm looking for is a general principle that could guide me in constructing proofs for these problems.
I find that, for elementary group theory problems, one of the best places to start is by asking yourself if (how) groups actions could be used to express this. Then you have some very powerful (while still elementary) theorems that you can use.

For your examples, I point you to User-33433's answer.

For another example which was found in a homework problem in the abstract algebra class that I just finished:


  Show that any group (including infinite) that contains a proper subgroup of finite index also contains a proper normal subgroup of finite index.


One way to prove it is to go through all of the motions of proving that the intersection of finite index subsets is, again, finite index, extending this by induction, looking at $N=\bigcap_{g\in G}gHg^{-1}$,  proving that this normal and is actually a finite intersection by the Orbit-Stabilizer Theorem when $G$ acts on the cosets of $H$ by conjugation, and finally using the result on finite intersections of finite index sets that you would have proved.

The easier, and more powerful, way to show this result (and even more, as we'll see) is the following which comes from considering the action of $G$ on the cosets of $H$ by conjugation as the important feature, rather than just a means to show that the previous set $N$ is a finite intersection.

Let $H\leq G$ be of finite index $n$. Then, $G$ acts on the cosets of $H$ by conjugation, and this induces a map $\varphi:G\to\text{Sym}\left(G/H\right)\cong S_{n}$. The kernel of this map is normal, and $G/\ker\varphi$ isomorphic to a subgroup of $S_{n}$, so $|G:\ker\varphi|\leq n!$, as required.

This proves that, not only do we have a proper normal subgroup of finite index, but we have one of index $\leq n!$. So, group actions are very powerful and allow you to go straight to the core of many elementary group theory problems, rather than having you flounder around for a bunch of other results just to scratch the surface.
Solution to $2$:

To prove that $n$ is odd note that if $n$ is even then there exists Sylow $2$ subgroup $S$ of G, easy to see that exist half of elements in $S$ of order $2$ and other half is $S\cap H$ is subgroup of S, but now $|S|=2^k, k\geq 2$, so use induction.

To prove that $G$ is Abelian use: $\forall x\in G\setminus H$, $\forall a_1, a_2\in H$, $xa_2a_1\in G\setminus H$, so $(xa_2a_1)^2=e$, so $xa_2a_1=a_1^{-1}xa_2$, $(a_1^{-1}x)^2=e$, so $a_1^{-1}x=xa_1$ and $xa_2a_1=xa_1a_2$. done