Is it possible to create $O(1)$ memory consuming algorithm, which is generating non-repeating pseudo random numbers?
I can remember numbers in the hash set and it will be $O(1)$ time, but the set will grow as numbers generated as $O(N)$. Is it possible to do $O(1)$?
Narrowing the question: we have parameter $N$. We need to generate all numbers from 1 to $N$ without repetition in (pseudo) random order.
May be there are reversible hash functions? I would compute just $H(i)$ then.