A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© kingowe 中级黑马   /  2015-5-17 18:33  /  823 人查看  /  6 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

有一个面试题: 使用单层循环为二维数组、三维数组赋值,  怎么做呢???谢谢大神回答

6 个回复

倒序浏览
比如二维数组是 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. }
复制代码
回复 使用道具 举报
  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. }
复制代码
回复 使用道具 举报 1 0
分开,二维数组看作特殊的一维数组,二维里面存放一维
回复 使用道具 举报

三维怎么整,还是用的这个方法吗?就是多 了一个z变量是吗?
回复 使用道具 举报
突然世界晴 发表于 2015-5-17 19:50
比如二维数组是 3X3的。

貌似挺麻烦,谢谢你啊。我再研究研究
回复 使用道具 举报
不错啊,学习了
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马