c++ - 查找最大值并删除二维数组中的该行。 C++

标签 c++ multidimensional-array

我需要使用两个随机二维数组。例如一个是 5x10。我可以在矩阵中找到最大值,但我不知道如何删除该最大值所在的行!

int max_ind(int masivs[x][y], int a, int b, int row[y], int rinda)
{
    max=masivs[0][0];
    for(i=0;i<a;i++)
        for(j=0;j<b;j++)
            if (masivs[i][j]>max)
                max=masivs[i][j];
    printf("%7d\n",max);
}

有什么想法吗?

最佳答案

也保存行索引,而不仅仅是最大值,并在循环后删除该行。

哦,如果您使用例如,删除一行会简单得多 std::vector (如 std::vector<std::vector<int>> masivs )。


如果你不能使用std::vector ,那么您必须移动剩余的行并将行数减一。这可以通过一个循环来完成,该循环将下一行移动到“最大”行,将下一行移动到下一行,依此类推。

关于c++ - 查找最大值并删除二维数组中的该行。 C++,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19742509/

相关文章:

c - 多维数组中元素的位置 [ C ]

java - 将文本文件读入 3d 数组

c++ - 无法从 lambda 构建

C++11:格式错误的调用是未定义的行为?

c++ - 用于隐式转换的 gcc 警告标志

c - 我需要一个将二维数组传递给 C 函数的简单示例

c++ - Netbeans-7.4 中的 gdb 用于 C++ 调试

c++ - Win32 无法从共享内存获取数据

javascript - 从 Angular 5 的数组中获取值

c# - 在 C# 中创建子数组引用(使用不安全?)