将一个二维数组转换为两个一维数组

Luk*_* Vo 3 c# java arrays algorithm

你可能会对我的要求感到奇怪,但这是真的,将1转换two-dimensional array2 one-dimensional arrays.

这就是我的老师问的问题,他说他会给那些回答这个(我认为是棘手的)问题的人提供一个完美的观点.我很乐意将任何2维或n维数组转换为一维数组.但他说2,所以我认为必须与第二阵列有关.并且,他没有告诉什么类型的数组(int,String或object),所以我认为必须使用任何类型的二维数组.

如果没有人在这里找出他想要的东西,我将回答他:转换为1维数组,并留下第二个空(或让它没有元素).但我认为对于这样一个棘手的问题,这不是一个好的答案.

编辑:这是我的老师问题,逐字逐句(他只是在会话结束时用语音问,而不是在教科书中,作为奖励问题(有...一个很好的奖励奖励)):给定a 2-dimensional array,把它转换成两个 1-dimensional array s.

我不知道是否考虑过Java和C#中的[] [] 2-dimensional array,但C#确实有[,],这是二维数组.我们正在研究计算机算法,没有目标IDE或语言.

编辑2:我给他发了电子邮件,他拒绝提供额外的信息(如果我有更多的信息,他说这对其他人不公平),并且他没有对锯齿状阵列的想法发表任何评论.他回答中唯一有用的事情是:考虑[] [] 2-dimensional array.

JNa*_*dal 6

我会咬人的.通过简单地一致地读取和写入,可以将整个二维阵列展平为两个一维阵列中的第一个.即,在第一个阵列中依次存储第1行,第2行等.每当您移动到下一行时,将下一个单元格(第一个一维数组的索引)的索引存储在第二个一维数组中,这将基本上成为行索引表.

正如Jon Skeet所说,这不是一个非常明确的问题; 也许有明确的信息,我们可以更好地帮助你.