算法题解法: //解法:使用 Fisher-Yates 洗牌来确保所有元素都被随机打乱。 //在洗牌过程中,确保每个元素不会被放回到原位置上。 public static void shuffle(int[] arr) { Random random = new Random(); for (int i = arr.length - 1; i >= 0; i--) { int j = random.nextInt(i + 1); // 确保每个元素不会在原来的位置 if (j == i) { // 如果选择的下标和当前位置相同,选择另一个下标,确保不会是原位置 j = (j + 1) % (i + 1); } //swap int temp = arr[j]; arr[j] = arr[i]; arr[i] = temp; } }
3 1

相关推荐

03-29 19:11
门头沟学院 Java
wyp_davis:是可以这样的,不过只要交钱就是假的
点赞 评论 收藏
分享
那么好了好了:他本来公司就是做这个的,不就是正常的游戏客户端和服务器开发,软硬件联动,有啥恶心不恶心的,提前告诉你就是怕你接受不了,接受不了就没必要再往后走流程浪费时间,虽然这公司是一坨。
点赞 评论 收藏
分享
牛客网
牛客企业服务