设计一个洗牌算法

给定N张扑克牌和一个随机函数,设计一个洗牌算法

设计思路

利用随机函数产生的值作为交换元素下标

实现代码

public class Solution{
    public void shuffle(int[] cards,n){
        Random random = new Random();
        int nextInt = random.nextInt();
        int len = cards.length;
        for(int i=0;i<len;i++){
            int nextInt = i+random.nextInt(len-i);
            int temp = cards[nextInt];
            cards[nextInt] = cards[i];
            cards[i] = temp;
        }
    }
}
全部评论

相关推荐

点赞 评论 收藏
分享
点赞 评论 收藏
分享
不愿透露姓名的神秘牛友
07-02 18:35
简历上把1个月实习写成了3个月,会进行背调吗?
码农索隆:一个月有一个月的实习经历,三个月有三个月的实习经历
简历当中有水分算不算造假...
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务