Isomorphism in all homology and cohomology groups Let $M^n$ be a closed, connected and orientable topological manifold of dimension $n \geq 2$ and let $f : M \to M$ be a continuous map. Assume that $f_* : H_n(M) \to H_n(M)$ is an isomorphism. The exercise is:

Show that $f_* : H_q(M;G) \to H_q(M;G)$ and $f^* : H^q(M;G) \to H^q(M;G)$ are isomorphisms for every $q \geq 0$ and every abelian group $G$.

The book suggests to start with the case $G = \mathbb{Z}$. I already showed that $f^* : H^n(M) \to H^n(M)$ and $f_* : H_0(M) \to H_0(M)$ are isomorphisms (using Poincaré duality and the Universal Coefficient Theorem), but I don't know how to proceed. For example, how do we show that $f_* : H_1(M) \to H_1(M)$ is an isomorphism?
PS.: I managed to show that $f^* : H^k(M) \to H^k(M)$ is injective and $f_* : H_k(M) \to H_k(M)$ is surjective for every $k$. Probably I am missing an algebraic argument to conclude. Could you help me? 
My thought was to write $H^k(M) = B^k \oplus T^k$, with  $B^k$ free abelian and $T^k$ the torsion subgroup. Since $f^*$ is injective, we have $\operatorname{rank}(H^k(M)) = \operatorname{rank}(\operatorname{im} f^*)$, but this doesn't necessarily imply that $f^*$ is surjective.
 A: Here's the main idea of the proof.  By Poincaré duality, given a nonzero class $\alpha\in H^q(M)$, you can expect there to be a class $\beta\in H^{n-q}(M)$ such that $\alpha\beta\in H^n(M)$ is nonzero.  So, since $f^*$ is an isomorphism on $H^n(M)$, $f^*(\alpha\beta)=f^*(\alpha)f^*(\beta)$ is nonzero so $f^*(\alpha)$ is nonzero.  Thus $f^*$ is injective on $H^q(M)$ and you can hope to then formally deduce that it must also be surjective using finiteness properties (for instance, an injective endomorphism of a finite dimensional vector space is automatically surjective).
Now there are complications to actually carrying this out: for instance, such a $\beta$ need not actually exist if you're taking cohomology with coefficients in $\mathbb{Z}$ (it won't if $\alpha$ is a torsion class).  There are various ways to handle this, but I think the easiest is to actually not start with coefficients in $\mathbb{Z}$ as your book suggests but instead work with coefficients in a field.  Then the statement of Poincaré duality is nicer (you really do just have a perfect pairing on finite-dimensional vector spaces given by the cup product, and also cohomology is simply the dual vector space of homology).  Then you can deduce the case of $\mathbb{Z}$ coefficients from the case of all fields and deduce the case of arbitrary coefficients from there.
