这是一个简单的洗牌实例

来源:互联网 发布:成都网络理政平台 编辑:程序博客网 时间:2024/05/17 07:37
这是一个简单的洗牌实例

Poker=zeros(54,1);
%NewPoker=zeros(54,1);

CardLeft=54;

for i=1:54
  Poker(i)=i;
end



for CardGet=1:54
   R_num=round(rand()*1000);
   R_index=mod(R_num,CardLeft)+1;
  % NewPoker(CardGet)=Poker(R_index);
   temp = Poker(R_index);
   if R_index == CardLeft %/*the last one*/
      j=j+1;%Poker(R_index)=0;
   else
      for ii=R_index:CardLeft-1
           Poker(ii)=Poker(ii+1);     
      end
      %Poker(CardLeft)=0;
      Poker(CardLeft)=temp;
   end
   CardLeft=CardLeft-1;
  
end

display(Poker);
0 0
原创粉丝点击