How interpret the notation $f:\{0,\dots, N-1\} \rightarrow \{0,\dots, N-1\}$, $N$ is a number of the form $2^n$?
A function $f\colon \{0,\ldots,N-1\} \to \{0,\ldots,N-1\}$ accepts an input from $\{0,\ldots,N-1\}$ and outputs something from $\{0,\ldots,N-1\}$. Just like any function $f\colon A \to B$.

In this case, we are interested in $N$ of the form $2^n$. That is, we are interested in values of $N$ such that $N = 2^n$. For example, $N = 256$. We identify the set $\{0,\ldots,N-1\}$ with the set of binary strings of length $n$, using binary notation. For example, if $N = 8$, then the interpretation works as follows:


0 is interpreted as 000.
1 is interpreted as 001.
2 is interpreted as 010.
3 is interpreted as 011.
4 is interpreted as 100.
5 is interpreted as 101.
6 is interpreted as 110.
7 is interpreted as 111.


As an example, the complementation function $f\colon \{0,\ldots,7\} \to \{0,\ldots,7\}$ is given by $f(x) = 7-x$. You can check that it corresponds to complementing the binary representation of the input.