相关疑难解决方法(0)

转置矩阵:交换元素不会改变值

我试图转置一个用向量构建的矩阵.

这是我写的转置函数:

void transpose(std::vector<std::vector<int>>& fill_mat) {
    for (int i = 0; i < fill_mat.size(); ++i) {
        for (int j = 0; j < fill_mat.size(); ++j) {
            std::swap(fill_mat[i][j], fill_mat[j][i]);
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

它似乎没有做任何事情:我的最终结果与起始结果相同.


这是我的完整计划:

#include<iostream>
#include<vector>
#include<utility>

void print_matrix(std::vector<std::vector<int>>& to_print) {
    for (int i = 0; i < to_print.size(); ++i) {
        for (int j = 0; j < to_print.size(); ++j) {
            std::cout << " " << to_print[i][j];
        }
        std::cout << std::endl;
    }
}

void make_matrix(std::vector<std::vector<int>>& fill_mat) {
    for (int i = …
Run Code Online (Sandbox Code Playgroud)

c++ vector

1
推荐指数
1
解决办法
57
查看次数

这种逻辑似乎是正确的,但不起作用。有没有错

该程序将反转数组的内容。例如,如果数组包含{1,2,3,4,5},则它应显示{5,4,3,2,1}

for(i=0;i<n;i++)
{
    tmp=a[i];
    a[i]=a[n-1-i];
    a[n-1-i]=tmp;
}
Run Code Online (Sandbox Code Playgroud)

c++

0
推荐指数
1
解决办法
49
查看次数

标签 统计

c++ ×2

vector ×1