对给定大小的数组进行随机排列,并将其与C++中的另一个相同大小的数组进行比较,可以按照以下步骤进行:
#include <iostream>
#include <algorithm>
#include <random>
void randomizeArray(int arr[], int size) {
std::random_device rd;
std::mt19937 gen(rd());
std::shuffle(arr, arr + size, gen);
}
bool compareArrays(int arr1[], int arr2[], int size) {
for (int i = 0; i < size; i++) {
if (arr1[i] != arr2[i]) {
return false;
}
}
return true;
}
int main() {
const int size = 10; // 数组大小
int arr1[size] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10}; // 第一个数组
int arr2[size] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10}; // 第二个数组
randomizeArray(arr1, size); // 随机排列第一个数组
if (compareArrays(arr1, arr2, size)) {
std::cout << "两个数组相同" << std::endl;
} else {
std::cout << "两个数组不同" << std::endl;
}
return 0;
}
这段代码首先定义了一个大小为10的数组arr1和arr2,它们的初始值相同。然后使用randomizeArray函数对arr1进行随机排列。最后使用compareArrays函数比较arr1和arr2是否相同,如果相同则输出"两个数组相同",否则输出"两个数组不同"。
这个方法可以用于对任意大小的数组进行随机排列,并与另一个相同大小的数组进行比较。在C++中,可以使用std::shuffle函数来实现随机排列,使用循环来比较数组元素是否相同。
领取专属 10元无门槛券
手把手带您无忧上云