【问题标题】:find square matrix size by element list count通过元素列表计数查找方阵大小
【发布时间】:2012-07-30 20:00:51
【问题描述】:

您好,我需要通过计算数组中的元素来计算矩阵大小, 例如,如果我在列表中有 25 个元素,我需要得到列 = 5 和矩阵中的第 5 行, 如果 26 个元素 5 列 6 行等。 谢谢。

【问题讨论】:

  • 似乎比编程问题更数学。作为提示:尝试使用Math.SqrtMath.Celling函数。尝试一些东西,向我们展示你到目前为止所做的尝试。

标签: c#


【解决方案1】:

我不知道你的具体要求是什么,但是如果你想生成一个不浪费太多空间的近似方阵,

int x = Math.Floor(Math.Sqrt(num_elems));
int y;
if (x*x == num_elems)
{
    y = x;
} else {
    y = x+1;
    if (x*y < num_elems)
    {
        ++x;
    }
}

生成最小矩阵的维度,其中行数和列数最多相差一个,可以容纳num_elems 个元素。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-02-15
    • 2022-06-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-05-29
    相关资源
    最近更新 更多