{haskell} 巧用nub生成无重复随机数

2016-12-28  本文已影响0人  windflow

无重复版本:

 randomN :: Int -> IO [Int]
 randomN n = do
     gen <- getStdGen
     return $ take n . nub $ randomRs (0, n-1) gen

有重复版本:

 randomN' :: Int -> IO [Int]
 randomN' n = do
     gen <- getStdGen
     return $ take n $ randomRs (0, n-1) gen
上一篇 下一篇

猜你喜欢

热点阅读