dealer.go 376 B

1234567891011121314151617181920212223
  1. package algorithm
  2. import (
  3. "math/rand"
  4. "time"
  5. )
  6. // Shuffle var n int64
  7. // var a int64= 1<<62
  8. // 洗牌
  9. func (c *Cards) Shuffle() {
  10. *c = make([]byte, TOTAL)
  11. copy(*c, CARDS)
  12. source := rand.NewSource(time.Now().UnixNano())
  13. //n ++
  14. //n %=a
  15. r := rand.New(source)
  16. for i := TOTAL - 1; i > 0; i-- {
  17. index := r.Int() % i
  18. (*c)[i], (*c)[index] = (*c)[index], (*c)[i]
  19. }
  20. }