刚学会二维数组

 1 package base.no7;
 2
 3 import java.util.Arrays;
 4
 5 public class Erwei {
 6
 7     /**
 8      * @param args
 9      */
10     public static void main(String[] args) {
11         // TODO Auto-generated method stub
12         int a[][] = new int[3][5];
13         for (int i = 0; i < a.length; i++) {
14             for (int j = 0; j < a[i].length; j++) {
15                 a[i][j] = i * j;
16             }
17         }
18         System.out.println(Arrays.toString(a[0]));
19         System.out.println(Arrays.toString(a[1]));
20         System.out.println(Arrays.toString(a[2]));
21     }
22 }
时间: 2024-12-19 15:25:41

刚学会二维数组的相关文章

二维数组最大值

1.题目:返回一个二维整数数组中最大子数组的和. 要求: 输入一个二维整形数组,数组里有正数也有负数. 二维数组中连续的一个子矩阵组成一个子数组,每个子数组都有一个和. 求所有子数组的和的最大值.要求时间复杂度为O(n). 2.设计思路 我们刚开始时是这么想的:就是最笨的方法:求每一个子矩阵的和,然后找最大值,我们知道这种方法会比较麻烦.后来我们联想到了上次写的一维数组,就想把二维数组转化为一维数组,然后按照一维数组的方法来做. 那么问题来了,把二维数组转化为一维数组后,怎么可以保证是连续的一个

nRF51800 蓝牙学习 进程记录 2:关于二维数组 执念执战

前天在玩OLED时想完成一直想弄得一个东西,就是简单的单片机游戏.因为STM32和nRF51822的内存足够,所以就用缓存数组的方法来显示图像(我也不知道术语是啥,反正就是在内存中建立一个128X64的二维数组,更新显示时将整个数组刷新到屏幕上),而且这两个OLED是串口的(还有一个128X32的OLED,一样串口的,连驱动时序和驱动函数都一样,两个都太小了,还那么贵......),四个IO口就能驱动(两个还是供电的VCC和GND),所以不像之前的那个mini 12864屏幕,它是8位并口的,带

C语言笔记(二维数组与数值指针)

一.关于二维数组和二维数组区别 (1)一维数组在内存中是连续分布存储的,同样,二维数组也是在内存连续存储的.所以从内存的角度来分析,一维数组和二维数组其实没有本质区别. (2) 二维数组可以使用一维数组来代替.但是在实际的应用中,有时候使用二维数组会更加直观,方便程序的编程. (3)两者在内存使用效率上是一模一样的. 二.二维数组的第一维和第二维概念 (1)例如 int a[2][5]中,前面的2表示第一维:后面的5表示第二维 (2) 二维数组的第一维表示最外部的那一层,第一维本身也是一个数组,

C语言 memcpy二维数组的复制

今天在实现二维数组的复制功能时,竟然出现了好多问题,还是太不小心了. 我们知道,平时进行矩阵复制,无非是二重循环进行赋值操作,所以今天想改用利用memcpy进行复制操作,当然一维数组的复制在上一篇文章已经练习过了 需要注意的问题是: 复制的本质是利用:行+变量字节数*列  这种表达,所以目标数组的行数一定是固定的 刚开始想到项目中行数是未知的,默认为空,结果程序逻辑问题,不停的溢出,所以要小心 #include <stdio.h> void print(int *data,size_t m,s

环二维数组问题

题目: 输入一个二维整形数组,数组里有正数也有负数.二维数组首尾相接,象个一条首尾相接带子一样.数组中连续的一个或多个整数组成一个子数组,每个子数组都有一个和.求所有子数组的和的最大值. 设计思路: 把它转化成环一维数组的问题.把二维数组的列加起来,看作是一个以为数组,再利用一维数组的问题来解决它. 实验代码; #include<iostream.h> int max2(int arry[],int length) //跨越arry[n-1].arry[0]的最大和 { int total=0

C++二维数组动态内存分配

对于二维数组和二维指针的内存的分配 这里首选说一下一维指针和一维数组的内存分配情况. 一维: 数组:形如int  a[5];这里定义了一个一维数组a,并且数组的元素个数是5,这里的a是这五个元素的整体表示,也就是通过a我们能找到这五个元素.注意:a是代表数组第一个元素的首地址.&a是代表数组的地址,虽然它们的值相同. 指针: int *p = NULL:这里p是一个指针,它指向的是计算 机内一块存储int类型的内存.P = a;就是让p等于刚才申请的数组的第一个元素的地址.所以通过p我们也能找到

C++二维数组动态申请内存

好久没用C++刷题了,今天早上刷了几条题,感觉很陌生了.怪我,大二下实在太颓废了,没啥作为. 今天更新个关于c++二维数组内存申请的问题,当初作为菜鸟初学指针的时候,还是在这方面有点搞不通的.今天用到了,顺便写下来,适当时候给C++初学者用用. -----------C++二维数组动态申请内存-------------- 如果对new和delete不是很了解的话可以到这里来看看,http://www.cnblogs.com/hazir/p/new_and_delete.html 首先,我们一般需

二维数组返回最大子矩阵之和

设计思路 将二维数组转化为一位数组(并非形式上的转化而是将连续的行合并然后当做上次编写的一维数组求最大子数组和)来计算.时间复杂度没有达到要求的O(n),也是通过遍历的方式将一个子矩阵与上几个子矩阵相加如果小于0则舍去这个子矩阵,按此方法计算从这个子矩阵以后的矩阵,知道遍历完取最大值. 代码: package soft_third_test; public class test { static int maxSum(int p[][],int startLine,int endLine,int

第五天:C基础之递归与二维数组

写递归函数时要明确结束条件和递归体. 练习了几个递归函数: 首先是斐波那契数,前几天写过的程序,今天写的时候还是出现了问题.在判断结束条件的时候写错.写成(i==1&&i==2) 这个是有明显的逻辑错误. 1 斐波那契#include<stdio.h> 2 int fbnq(int i) 3 { 4 if(i==1) 5 return 1; 6 if(i==2) 7 return 1; 8 int ret = fbnq(i-1)+fbnq(i-2); 9 10 return r