Use Knuth-Fisher-Yates algorithm