简单洗牌算法

<?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; 
 } 
 ?>

 

posted @ 2019-07-25 14:57  龙福  阅读(211)  评论(0编辑  收藏  举报