二.一维和多维,静态与动态数组
2016-09-12 16:11
211 查看
1.数组概论
数组是一种按顺序存储的数据结构,可以使用下标进行随机化访问。2.静态数组
2.1 一维数组
使用顺序存储,可以随时改变其中内容。申请方式:
语言 | 申请方式 |
---|---|
java | 数组类型 变量名[]=new 数组类型[个数] |
c++ | 数组类型 变量名[个数] |
2.2 二维数组和多维数组
二维数组是使用数组作为数组的元素进行存储,多维数组是迭代这个过程。申请方式:
语言 | 申请方式 |
---|---|
java | 数组类型 变量名[][]=new 数组类型[行数][列数] |
c++ | 数组类型 变量名[行数][列数] |
依次存储,第一行存完后开始存第二行。
3.动态数组
3.1一维动态数组
一维动态数组是在不确定数组元素有多少个时使用。申请方式:
语言 | 申请方式 |
---|---|
java | 数组类型 变量名[]=new 数组类型 |
c++ | 数组类型 *变量名[]=new 数组类型 |
动态向系统申请存储空间,依次存储。
注:
c++使用完需要使用delete 变量名删除申请的空间,java则不需要。
3.2 二维动态数组和多维动态数组
二维动态数组是使用数组作为数组的元素进行存储,多维动态数组是迭代这个过程。申请方式:
语言 | 申请方式 |
---|---|
java | 数组类型 变量名[][]=new 数组类型 [m] |
c++ | 指针指向一维数组的指针,见代码 |
int **a; a=new int*[m]//设置行 for(int i=0;i<m;i++){ a[i]=new int ;//设置列 } ... for(int j=0;j<m;j++){ delete(a[j]); } delete a;
存储方式:
动态向系统申请存储空间,依次存储。
4.总结
类型 | 语言 | 申请方式 |
---|---|---|
一维数组 | java | 数组类型 变量名[]=new 数组类型[个数] |
一维数组 | c++ | 数组类型 变量名[个数] |
二维数组 | java | 数组类型 变量名[][]=new 数组类型[行数][列数] |
二维数组 | c++ | 数组类型 变量名[行数][列数] |
一维动态数组 | java | 数组类型 变量名[]=new 数组类型 |
一维动态数组 | c++ | 数组类型 *变量名[]=new 数组类型 |
二维动态数组 | java | 数组类型 变量名[][]=new 数组类型 [m] |
二维动态数组 | c++ | 指针指向一维数组的指针 |
相关文章推荐
- JavaSE7基础 一维数组的初始化 静态与动态方式
- 我怎样在函数参数传递时混用静态和动态多维数组?
- C++开辟动态一维、二维、多维数组
- C语言——数组与指针之动态分配一维和多维数组
- C++ 用new 动态创建多维数组
- 7.13 我该如何动态分配多维数组 ?
- 关于动态数组、静态数组转换为字符串的一些问题 - 给 "厨师" 的回复
- 多维动态数组与多维动态数组指针 - 回复 "lz_whj" 的问题
- 纯c语言实现动态分配多维数组的方法
- VB.NET 数组的定义 动态使用 多维数组
- 分别使用静态数组与动态数组建立一个区域 - 回复 "老A123" 的问题
- C语言中动态分配数组(一维)
- 动态数组与静态数组中第一个元素与数组名的关系
- VB中如何声明及使用多维数组,多层数组及动态数组
- VB中如何声明及使用多维数组,多层数组及动态数组
- 我该如何动态分配多维数组?
- 利用递归把多维数组转为一维数组的函数
- C++中的动态多维数组
- 一个动态多维数组的实现
- 二维动态数组定义及二维静态数组与**P的区别