NX1 的向量 转化成 N/2 * 2 的矩阵 C++ 实现
时间: 2024-02-17 08:01:35 浏览: 17
以下是将一个nx1的向量转化为一个N/2*2的矩阵的C++实现,同样是将该向量按照每两个元素为一组划分,得到N/2个二元组,然后将每个二元组在矩阵中排成一行,即可得到N/2 * 2的矩阵。
```c++
#include <iostream>
#include <vector>
using namespace std;
vector<vector<int>> vectorToMatrix(vector<int> v) {
int n = v.size();
vector<vector<int>> matrix;
for (int i = 0; i < n; i += 2) {
vector<int> row;
row.push_back(v[i]);
row.push_back(v[i+1]);
matrix.push_back(row);
}
return matrix;
}
int main() {
vector<int> v = {1, 2, 3, 4, 5, 6, 7, 8};
vector<vector<int>> matrix = vectorToMatrix(v);
for (auto row : matrix) {
for (auto element : row) {
cout << element << " ";
}
cout << endl;
}
return 0;
}
```
输出结果为:
```
1 2
3 4
5 6
7 8
```