洗牌算法彙總以及測試洗牌程序的正確性

洗牌可以抽象爲:給定一組排列,輸出該排列的一個隨機組合,本文代碼中均以字符數組代表該排列 算法1-算法3 都是在原序列的基礎上進行交換,算法空間複雜度爲O(1) 算法1(錯誤):隨機交換序列中的兩張牌,交換n次(n爲序列的長度),代碼如下: 1 void Shuffle_randomSwap(char *arr, const int len) 2 { 3 for(int i = 1;
相關文章
相關標籤/搜索