The elements of $\mathbb{Z}$ can be enumerated as $0, 1, -1, 2, -2, 3, -3, \ldots$. Similarly, the points of the lattice $\mathbb{Z}^2$ can be enumerated
$$(0,0), (1,0), (0,1), (-1,0), (0,-1), (2,0), (1,1), (0,2), (-1,1), \ldots$$
I would like to extend this algorithm to $\mathbb{Z}^n$. Is there a simple way to do that?
Note that the ordering of the elements may vary. The only condition should be that if $B_1$ and $B_2$ are two closed balls in the metric $L^1$ on $\mathbb{Z}^n$, and $B_1 \subset B_2$, then all the elements of $B_1$ should be enumerated before any element of $B_2 - B_1$.
Write $\Bbb Z^n$ = $\bigcup B(0, k)$ (closed ball for the $L^1$ distance in $\Bbb Z^n$).
Then enumerate the elements of $B(0, k) - B(0, k-1)$ in lexicographic order (or reverse lexicographic order in you case).
Then you get an enumeration with the property you asked for, generalizing you enumeration in the case $n=2$ to the general case.