在C++中实现二维数组的排列循环可以通过嵌套循环来实现。以下是一个示例代码:
#include <iostream>
const int ROWS = 3;
const int COLS = 4;
void printArray(int arr[ROWS][COLS]) {
for (int i = 0; i < ROWS; i++) {
for (int j = 0; j < COLS; j++) {
std::cout << arr[i][j] << " ";
}
std::cout << std::endl;
}
}
void permuteArray(int arr[ROWS][COLS]) {
int temp = arr[ROWS-1][COLS-1];
for (int i = ROWS-1; i > 0; i--) {
arr[i][COLS-1] = arr[i-1][COLS-1];
}
for (int j = COLS-1; j > 0; j--) {
arr[0][j] = arr[0][j-1];
}
arr[0][0] = temp;
}
int main() {
int arr[ROWS][COLS] = {{1, 2, 3, 4},
{5, 6, 7, 8},
{9, 10, 11, 12}};
std::cout << "Original Array:" << std::endl;
printArray(arr);
permuteArray(arr);
std::cout << "Permuted Array:" << std::endl;
printArray(arr);
return 0;
}
这段代码中,我们定义了一个3行4列的二维数组arr
,并实现了两个函数:printArray
用于打印数组,permuteArray
用于实现数组的排列循环。
permuteArray
函数中,我们首先保存数组最后一个元素的值到temp
变量中。然后通过两个循环,将数组中的元素向后移动一个位置。最后,将temp
的值赋给数组的第一个元素,完成一次排列循环。
在main
函数中,我们先打印原始数组,然后调用permuteArray
函数进行排列循环,最后再次打印数组,展示排列循环后的结果。
这是一个简单的二维数组排列循环的实现示例,你可以根据实际需求进行修改和扩展。
企业创新在线学堂
云+社区技术沙龙[第17期]
企业创新在线学堂
"中小企业”在线学堂
云原生正发声
云原生正发声
领取专属 10元无门槛券
手把手带您无忧上云