黑马程序员技术交流社区

标题: 今天看到一个面试题。。。 [打印本页]

作者: kingowe    时间: 2015-5-17 18:33
标题: 今天看到一个面试题。。。
有一个面试题: 使用单层循环为二维数组、三维数组赋值,  怎么做呢???谢谢大神回答

作者: 突然世界晴    时间: 2015-5-17 19:50
比如二维数组是 3X3的。
  1. int[][] arr=new int[3][3];
  2. for (int x=0;x<(arr.length*arr[0].length;x++)
  3. {
  4.   if(x<arr[0].lenght)
  5.   {
  6.    ar[0][x]=x;
  7. }
  8. if(x<arr[0].length+arr[1].length)
  9. {
  10.   arr[1][x-arr[0].length]=x;
  11. }
  12. .......
  13. }
  14. }
复制代码

作者: 突然世界晴    时间: 2015-5-17 19:55
  1. int[][] arr=new int[3][3];
  2. for(int x=0,y=0;x<int.length;y++)
  3. {
  4.   if(y<arr[x].length)
  5. {
  6.    arr[x][y]=(x+1)*(y+1);
  7. }else
  8. {
  9.   x++;
  10. y=0;
  11. }
  12.    
  13. }
复制代码

作者: 南朝小和尚    时间: 2015-5-17 19:57
分开,二维数组看作特殊的一维数组,二维里面存放一维
作者: 菜鸟的求学路    时间: 2015-5-17 20:08
突然世界晴 发表于 2015-5-17 19:55

三维怎么整,还是用的这个方法吗?就是多 了一个z变量是吗?
作者: kingowe    时间: 2015-5-17 20:12
突然世界晴 发表于 2015-5-17 19:50
比如二维数组是 3X3的。

貌似挺麻烦,谢谢你啊。我再研究研究
作者: zhangjnia    时间: 2015-5-17 21:14
不错啊,学习了




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2