php实现简单洗牌算法

yipeiwu_com6年前PHP代码库
如下所示:
复制代码 代码如下:

<?php
 /**
  * 简单洗牌算法
  */

 $card_num=54; //牌数
 print_r(wash_card($card_num));

 function wash_card($card_num)
 {
     $cards=$tmp=array();
     for($i=0;$i<$card_num;$i++){
         $tmp[$i]=$i;
     }

     for($i=0;$i<$card_num;$i++){
         $index=rand(0,$card_num-$i-1);
         $cards[$i]=$tmp[$index];
         unset($tmp[$index]);
         $tmp=array_values($tmp);
     }
     return $cards;
 }
 ?>

相关文章

php实现斐波那契数列的简单写法

斐波那契数列是非常常见的一类数列,其数学定义为:F0=1,F1=1,Fn=F(n-1)+F(n-2)(n>=2,n∈N*)。本文就用php来简单实现斐波那契数列,代码十分简洁易懂,...

PHP生成随机字符串实例代码(字母+数字)

当我们要生成一个随机字符串时,总是先创建一个字符池,然后用一个循环和mt_rand()或rand()生成php随机数,从字符池中随机选取字符,最后拼凑出需要的长度 function...

PHP信号量基本用法实例详解

本文实例讲述了PHP信号量基本用法。分享给大家供大家参考,具体如下: 一些理论基础: 信号量:又称为信号灯、旗语 用来解决进程(线程同步的问题),类似于一把锁,访问前获取锁(获取不到则等...

php计算一个文件大小的方法

本文实例讲述了php计算一个文件大小的方法。分享给大家供大家参考。具体如下: <?php function dirSize($directoty){ $di...

PHP常见数学函数及BC高精度数学函数用法示例

本文实例讲述了PHP常见数学函数及BC高精度数学函数用法。分享给大家供大家参考,具体如下: 1. bcadd 任意精度数的相加 2. bcsub 任意精度数的减法 3. bcmul 乘法...