Using a Feistel Network for full-cycle permutation : nice algorithm. requires that the permuted set’s size be a power of 2 however – although for smaller sets you can just skip to the next output value, since they’re not going to repeat

(tags: feistel-network full-cycle permutation shuffling algorithms)algorithm – Generating shuffled range using a PRNG rather than shuffling – Stack Overflow : some reasonably good answers on using an LFSR or LCG to generate a full-cycle permutation with no repeats

(tags: lfsr lcg algorithms permutation shuffling)