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.