刷题刷出新高度,偷偷领先!偷偷领先!偷偷领先! 关注我们,悄悄成为最优秀的自己!

面试题

请阐述二维数组A[1… m, 1… n]按行存储在一维数组B中的情况下,二维数组元素A[i, j]在一维数组B中的具体位置或下标是什么?

使用微信搜索喵呜刷题,轻松应对面试!

答案:

解答思路:

对于二维数组A[1… m,1… n],我们可以将其视为有m行n列的数组。当这个二维数组按行展开存储在一维数组B中时,我们需要计算二维数组元素A[i,j]在一维数组B中的下标。这可以通过简单的数学计算得出,即先将所有前面的元素(包括当前行的元素)累加,然后加上当前元素的位置。具体来说,就是将前面所有行的元素总数(即行数乘以列数)加上当前列数j即可。

最优回答:

A[i,j]在一维数组B中的下标为:i * n + j。也就是说,我们首先需要计算当前行之前的元素总数(行数乘以列数n),然后将这个数值加上当前列数j,即可得到A[i,j]在一维数组B中的位置。

解析:

在处理二维数组到一维数组的映射问题时,我们通常使用“行优先”或“列优先”的方法。在这个问题中,我们按照“行优先”的方式将二维数组展开存储在一维数组B中。此外,对于不同编程语言和不同的数据存储方式,二维数组在一维数组中的存储方式也可能有所不同。因此,在实际编程过程中,需要根据具体环境和需求来确定如何计算二维数组元素在一维数组中的位置。
创作类型:
原创

本文链接:请阐述二维数组A[1… m, 1… n]按行存储在一维数组B中的情况下,二维数组元素A[i, j]在

版权声明:本站点所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明文章出处。

让学习像火箭一样快速,微信扫码,获取考试解析、体验刷题服务,开启你的学习加速器!

分享考题
share