求助-数据结构二维数组问题

问题描述

数据结构二维数组问题

设二维数组A[1...m,1...n]按行存储在数组B中,则二维数组元素A[i,j]在一维数组B中的下标为()
A.n*(i-1)+j B.n*(i-1)+j-1 C.i*(j-1) D.j*m+i-1
答案是A,想知道具体的做法和计算过程,谢谢了

解决方案

m行n列,每行有n个,下标(i,j),就是第i行从左至右第j个的位置,而从第一到第i-1行每行都有n个,已经有n*(i-1)个,所以再加上第i行的j就是了

解决方案二:

二维数组作为参数传递问题

解决方案三:

你画个图就懂了,m行n列数组,A[1,1]=B[0],A[2,2]=B[4]........A[i,j]=B[(i-1)*n+j]

时间: 2024-08-30 22:06:51

求助-数据结构二维数组问题的相关文章

求助一道二维数组交换特定元素位置的算法题,谢谢大家!

问题描述 求助一道二维数组交换特定元素位置的算法题,谢谢大家! 刚试验了一下出了新问题- - 比如,一开始是左边的数组,我想"把2个0去掉,然后0上面的2就掉下来了",形成右边的新数组 然后我用了循环遍历,比如只看第二列,我的做法是"从下往上找,遇到0,就和0上面的数字交换",结果成了下面这个样子了- - 我有个改进想法是"还是从下往上找,遇到0之后判断上面的是不是0,如果是0,再继续向上再找,直到不是0,然后把这个数赋值给一开始那个0的位置",

三消-求助!关于二维数组相邻数字的判断

问题描述 求助!关于二维数组相邻数字的判断 题目是: 用任意编程语言实现,关于<三消除宝石类游戏>的匹配算法 地图用一个二维数组map[m][n]表示 问题有3个: 1.随机填入1到4的数字到map,表示4种不同的宝石,格式化打印出地图内容,让地图内容肉眼可读. [这道我写出来了,用的2个for循环] 2. 计算出符合条件的格子(横着或者竖着连续三个或三个以上相同)消除掉后的地图变化 ,消除掉宝石的空格子设置成0,格式化打印地图. [这道不会] 3. 计算宝石下落,填满空格子后的地图变化(最上

Java千百问_06数据结构(017)_什么是二维数组

1.二维数组如何定义 Java语言中,多维数组被看作数组的数组.  了解一维数组看这里:java中的数组是什么  定义方式和一维数组类似,如下: type arrayName[ ][ ]: type [ ][ ]arrayName; 2.二维数组如何初始化 二维数组初始化和一维数组一样,分为静态初始化和动态初始化 静态初始化  Java语言中,由于把二维数组看作是数组的数组,数组空间不是连续分配的,所以不要求二维数组每一维的大小相同.初始化方式如下: int intArray[ ][ ]={{1

在java中一维数组和二维数组有什么区别吗?

问题描述 在java中一维数组和二维数组有什么区别吗? 求大神指点java中一维数组和二维数组的区别,为什么一位数组是一行 二维数组可以定义多行 解决方案 如图黑色的是一维数组红色的是二维数组一维数组用来存数据二维数组用来存一维数组 解决方案二: JAVA中一维数组和二维数组的定义一维数组及二维数组的用法java中arraylist和一维数组二维数组的转换 解决方案三: 一楼正解,一维和二维的区别就是线和面的区别,一维的数组你就可以通过一个下标来准确定位,而二维的就需要有两个就像坐标系一样,一维

二维数组-关于C语言的指针数组的问题

问题描述 关于C语言的指针数组的问题 老师说过 传递一个二维数组时 必须指定 第二维的 个数 才能正确索引 数组1维+1的位置 函数参数传递 都是写成这样 abc(int* array[10]) 但是看到main函数的 参数确是 int main(int argc, char* argv[], char* env[]) 这样写 能索引argv+1 的位置吗? 解决方案 当然可以,C语言是一种简陋和原始的语言,它简陋的程度对于用惯了高级编程语言的人来说匪夷所思,比如你完全可以越界访问数组,至于结果

二维数组-String数组之间如何传值

问题描述 String数组之间如何传值 package com.excel.action; import java.io.BufferedInputStream; import java.io.File; import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.IOException; import java.text.DecimalFormat; import java.text.

二维数组怎么保存进app.config里边

问题描述 {{"06","89","26","74","81","74","15","22"},{"73","32","98","06","86","95","90","86"}}这样的二维

关于二维数组地址问题的一个答复

[来信] 敬爱的贺老师: 您好! 一直关注您的CSDN博客,首先向您说声辛苦了.作为外校的一名学生,我想向您请教一个关于二维数组的问题.程序如下: int a [3][4] = { 1,2,3,4,5,6,7,8,9,10,11,12 }; cout << hex << a << endl; cout << hex << &a[0][0] << endl; cout << hex << a[0] <

Swift游戏开发之俄罗斯方块:No.3 二维数组

数组是一个很有用的数据结构,很多程序都建立在数组之上,我很少看到哪个应用程序不用到数组的. 而我们的俄罗斯方块显然也需要数组,而且是更为特殊的  二维数组. 为什么是二维数组呢?其实我们的整个游戏区域,可以看做是一个二维数组区域,就像这样: 我们的每一个block都占据在这样一个20x10的区域之内,20行,10列的一个200个block的二维数组让我们可以根据(x,y)坐标来确定block的位置,而这些blocks其实就是组成我们的L形,或者Z形 等等不同但我们都熟知的俄罗斯方块: swift