fisher-yates-shuffle Algorithm for generating a random permutation of finite squence language C++ References https://en.wikipedia.org/wiki/Fisher%E2%80%93Yates_shuffle