Injective, Surjective, Bijective
NOTHING COLLIDES, NOTHING IS MISSED, OR BOTH
A map sends every point of its domain somewhere in its target, and that is all it promises. It may send two points to the same place, and it may leave parts of the target untouched. Injective forbids the first, surjective forbids the second, bijective forbids both.
What each word forbids
Let \(f : M \to N\) be a map, \(M\) the domain and \(N\) the target.
\(f\) is injective if and only if \(f(p_1) = f(p_2) \iff p_1 = p_2\) for all \(p_1, p_2 \in M\).
\(f\) is surjective if and only if for every \(n \in N\) there is a \(p \in M\) with \(f(p) = n\).
\(f\) is bijective if and only if it is both.
Injective is a condition on the domain: no two of its points may be sent to one place. Surjective is a condition on the target: none of its points may be left without something arriving. Neither implies the other, and the first two maps in the picture are the two ways that shows up.
A bijection is what can be run backwards
To turn a map around you need, for each point of the target, exactly one point of the domain to go back to. A collision gives you two and no way to choose; a point nothing reaches gives you none. So a bijection \(f : M \to N\) has an inverse \(f^{-1} : N \to M\), and a map failing either condition has none. The preimage is not a substitute: it exists for every map, but it returns a subset of \(M\) rather than a point.
The answer depends on the target you name
Neither word is a property of the rule alone; both depend on the two sets it is declared to run between. Take squaring. As a map \(\mathbb{R} \to \mathbb{R}\) it is neither: \(-2\) and \(2\) collide, and nothing lands on \(-1\). As \(\mathbb{R} \to [0,\infty)\) it is surjective and still not injective. As \([0,\infty) \to [0,\infty)\) it is both, and only then can it be run backwards, though the rule never changed.