首页
题库
面试
求职
学习
竞赛
More+
所有博客
搜索面经/职位/试题/公司
搜索
我要招人
去企业版
登录 / 注册
首页
>
试题广场
>
数组A=array[1..100,1..100]以行序为主序
[单选题]
数组A=array[1..100,1..100]以行序为主序存储,设每个数据元素占2个存储单元,基地址为10,
则LOC[5,5]应为。
1020
1010
818
808
查看正确选项
添加笔记
求解答(32)
邀请回答
收藏(742)
分享
32个回答
添加回答
49
春雪菡萏
发表于 2017-09-11 14:25:24
回复(1)
23
@追星逐月@
[(5-1)*100+(5-1)]*2+10=818,第一个5表示以行为序列,所以要使用列中的5,而不是使用行中的5,即使用A[5][5]中的第二个5,即(5-1)*100(这里的100表示列,相当于A[100][100]中的第二个100,),因为行和列都是从1开始,所以
行和列
都要-1,每个数据元素占2个存储,所以行和列都要*2,基地址为10,意思为首地址为10,所以选818
编辑于 2017-09-27 20:07:09
回复(0)
19
我是俊生啊
没看懂A=array[1..100,1..100]这是表示什么,求大神解
发表于 2017-08-23 20:17:10
回复(6)
15
EdwinShii
这题的重点应该是上面描述中,二维数组计数从1开始,所以(5-1)
发表于 2018-06-22 17:06:54
回复(1)
12
门头沟落魄打工人
1-按行优先存储:把二维数组中的数据一行一行地顺次存入存储单元。
2-A=array[1..100,1..100],就是A[100][100],元素开始下标从1开始,所以一行就是100个元素,一列也是100个元素。
3-LOC:存储首地址
4-对于A[1..m, 1....n],loc(i, j) = loc(1, 1) + [n*(i-1) + j -1] * b,b是每个元素占位大小
具体地,A[5][5]上面有1、2、3、4共四行,单独这行前面有1、2、3、4共四列,共有4*100+4=404个元素,每个元素占2个存储单元的话,共占404*2=808个存储单元,又因为数组A的起始地址(即基地址)是10,所以A[5][5]的起始地址就是808+10=818.
发表于 2019-05-08 11:31:58
回复(1)
10
牛客8760785号
Loc(A
ij
)=10(基地址)+[(5-1)*100+(5-1)]*2=818。
发表于 2017-06-20 20:43:24
回复(0)
2
一起offer
公式:—行序为主={(行-1)*列总数+(列-1)}*存储大小+基地址
发表于 2022-04-11 08:59:58
回复(0)
2
IFindaJob
1, 2, 3, ... , 100
1 (1,1), (1,2 ), (1,3), ... (1,100)
2 (2,1), (2,2 ), (2,3),
... (2,100)
100
(100,1),
(100,2 ),
(100
,3),
..., (100,100)
将二维数组映射到一维数组,然后按行排序的话就意味着需要先排序(1,1)(1,2)...(1,100),(2,1)...(2, 100), 那么题目要求的[5,5] 就是标记为 5的行数和5的列数,我们可以知道在5的行数前还有1,2,3,4这四行,每一行呢都是100个元素,所以是100*4,在这5行之前有400个元素,然后列数是5,那么列数5之前有4个元素,所以第5行有4个元素在第五列之前,所以总的元素加起来就是404, 然后每个元素占2个存储单元所以,404*2 = 808,已知基地址为10,这个基地址就是指A[0][0]的首地址是10,最后首地址+5行5列这其中所有的元素的大小 = 10 + 808 ,自然就可以得出这个范围内的地址大小了,也就是818
发表于 2021-07-21 21:50:38
回复(0)
1
意会。
该二维数组从A[1][1]开始。
发表于 2021-10-27 20:29:11
回复(0)
1
耀神
注意啦!该数组的基数组是1,1
发表于 2019-08-22 00:29:36
回复(0)
1
彭禺
本题应注意其从1,1开始,和做过的题不一样,应警惕
发表于 2018-11-01 19:41:30
回复(0)
1
fighting✔
从1开始,从1开始…
发表于 2018-09-15 11:28:31
回复(0)
1
蜗牛七号
居然忘了首地址从10开始
发表于 2018-03-29 09:03:48
回复(0)
0
觉醒了的打工人很幸运
注意加上基地址
编辑于 2024-03-21 08:15:12
回复(0)
0
牛客858633671号
这题注意下标从1开始 定位到A[5][1] A[5][1] 到A[1][1] 共4行 每行100个元素(列) 每个元素2单位 总共是2✘100✘4=800 从A[5][1]到A[5][5] 总共是4列 每个元素2单位 总共是4✘2=8 再加上首地址10 一共是: 800+10+8=818
发表于 2023-11-12 09:37:59
回复(0)
0
一定要上岸的加菲猫很想按时下班
首先要明确这里数组是从1开始计数,如果是a[100][100]那就是从0开始计数,对于lock[i][j]的地址=基地址+lock[(i-1)×100+(j-1)]×b,这里b指的是每个元素所占的字节数,也就是10+[4*100+4]*2=818
发表于 2023-07-13 07:51:53
回复(0)
0
牛客453344959号
mark
发表于 2023-01-27 23:15:25
回复(0)
0
Iam乙太
我去,没看见基地址为10
发表于 2022-12-04 10:01:59
回复(0)
0
.M.Y
数组 是从1开始的,而不是从0开始的
发表于 2022-09-23 22:44:10
回复(0)
0
我写的bug呢?
重点:下标从0开始i和j都不需要做-1计算,下标从1开始就需要做-1计算
发表于 2022-08-05 10:47:03
回复(0)
这道题你会答吗?花几分钟告诉大家答案吧!
提交观点
问题信息
数组
上传者:
娃哈哈呀~
难度:
32条回答
742收藏
5035浏览
热门推荐
相关试题
明明的随机数
数组
评论
(3693)
来自
华为研发工程师编程题
分页系统的逻辑地址结构是一维的,分...
操作系统
评论
(1)
关于分段系统与分页系统的区别,描述...
操作系统
评论
(1)
已知a
40
=...
京东
职能
2019
财务
保险
评论
(1)
有20000人的就餐需求,现建了一...
评论
(1)
扫描二维码,关注牛客网
意见反馈
下载牛客APP,随时随地刷题