I did the following exercise, can you tell me if I have it right, thank you (Just/Weese p 176):
Show that $|\xi + 1|$ is either finite or equal to $|\xi|$. (here $\xi$ is an ordinal)
By contradiction assume $\xi + 1$ is infinite and $|\xi + 1|>|\xi|$.
For an infinite ordinal $S$ we can construct a bijection $f: S + 1 \to S $ as follows: Let $S + 1 = S \cup \{\ast\}$. Then define $\ast \mapsto s_0$ where $s_0 = \min S$ and $s \mapsto \min (S \setminus f[I(s)])$ where $I(s) = \{s' \in S \mid s' < s\} \cup \{\ast\}$ is the initial segment of $s$ together with the additional element.
It seems a bit convoluted. More simply you could say that if $\xi \ge \omega$ then you can define a bijection $f:\xi+1 \to \xi$ as follows:
This is very similar to what you did. Essentially, it puts the top element to $0$ and increments all the naturals, and leaves everything else fixed.
On the point of style: you could have cut off your entire first sentence and started the proof with "For an infinite ordinal $S$ ...". It's an example of the classic $$\text{[Suppose not X]}-\text{[Proof of X]}-\text{[Therefore not not X]}$$ when just $\text{[Proof of X]}$ would have sufficed.