If an homomorphism maps elements of the same orders to each other, is then an isomorphism? I know that, given $f:G_1 \rightarrow G_2$ homomorphism, if $g \in G_1$ has order $n$, then $f(g)$ has order that divides $n$, and that if $f$ is an isomorphism then $f(g)$ has order equals to $n$.
Now my question is, if $f$ is an homomorphism such that $\text{ord}(g)=\text{ord}(f(g))$ for every $g \in G$, can we say that $f$ is an isomorphism?
 A: Note that an element has order $1$ if and only if it is the identity. If you have a homomorphism that respects orders, then if $g\in G_1$, $g\neq e$, it follows that $f(g)\neq e$. Thus, $f$ has trivial kernel, and hence is one-to-one.
In particular, if $G_1$ and $G_2$ are finite of the same order (size), then $f$ must be a bijection. In that case, it is an isomorphism. In even more particular, if $G=G_1=G_2$ and it is a finite group, then $f$ will be an automorphism/isomorphism from $G$ to itself.
If $G_1$ and $G_2$ have different orders, then you must have $|G_1|\lt |G_2|$; this is certainly possible and $f$ need not be an isomorphism. For example, the map from $C_2$ (cyclic of order two) to $C_2\times C_2$ sending $x$ to $(x,e)$ respects order but is not an isomorphism, because it is not surjective.
For infinite groups, it is also not the case that $f$ needs to be an isomorphism, even if they have the same cardinality: $f\colon\mathbb{Z}\to\mathbb{Z}$ given by $f(x)=2x$ respect order but is not surjective. If you want one in which elements have finite order, just take a direct product of infinitely many copies of $C_2$, and then let $f$ be the “right shift” morphism.
