文章目录

  • 1. 数组结构的特点
  • 2. 数组的两个基本运算
  • 3. 数组的存储
  • 4. 数组存储地址的计算
  • 5. 数组存储地址的计算示例
1. 数组结构的特点

(1) 数组元素数目不变,一旦定义了一个数组结构,数组元素个数就不会发生改变
(2) 数组元素具有相同的数据类型
(3) 数组元素的下标关系具有上下界的约束且下标有序

2. 数组的两个基本运算

(1) 给定一组下标,存取相应的数据元素
(2) 给定一组下标,修改相应的数组元素中某个数据项的值

3. 数组的存储

根据数组结构的特点知道数组一般不做插入和删除操作,数组的存储适合采用顺序存储结构,二维数组存储结构可分为按行为主序和按列为主序两种存储方法。

4. 数组存储地址的计算
数组类型 存储地址的计算(a是数组首地址,len是每个数组元素所占长度)
一维数组 a[i]的存储地址:a+i*len
二维数组:a[m-1][n-1],m行n列 按行存储:a+(i*n+j)*len;按列存储:a+(j*m+i)*len
5. 数组存储地址的计算示例

1)已知一维数组a中每个元素占用2个字节,求a[10]的存储地址?

答:a[10]的存储地址为:a+10*2=a+20

2)已知4行5列的二维数组a中的每个元素占用2个字节,求元素a[3][2]按行为主序存储的存储地址和按列为主序存储的存储地址?

答:

按行存储:a+(3*5+2)*2 = a+34

按列存储:a+(2*4+3)*2 = a+22

数组存储地址的计算 --数据结构相关推荐

  1. 数组--存储地址的计算

    一维数组存储地址的计算 假设数组的首位置是:a 每个元素所占空间为:len 则,可以推断出a[i]的地址是:a+i*len 二维数组按行存储a[3][5] 假设数组的首位置是:a 每个元素所占空间为: ...

  2. 数据结构考研:数据结构的三要素:逻辑结构,存储结构,数据计算的详细区分与讲解(软件工程/计算机/王道论坛)

    一.问题背景 不管是计算机专业的考研初试还是工作面试,数据结构都是很重要的课程.而博主最近看的王道论坛2020的数据结构开篇就有数据结构的三要素:逻辑结构,存储结构,数据计算,而在数据结构的考研真题和 ...

  3. Java黑皮书课后题第7章:*7.11(统计:计算标准差)编程练习题5.45计算数字的标准差。本题…计算标准差,使用一个数组存储x的每个数。编写测试程序,提示用户输入10个数字,显示平均值和标准差

    7.11(统计:计算标准差)编程练习题5.45计算数字的标准差.本题-计算标准差,使用一个数组存储x的每个数.编写测试程序,提示用户输入10个数字,显示平均值和标准差 题目 题目描述与运行示例 破题 ...

  4. Python数据结构之树形结构——数组存储

    Python数据结构之树形结构--数组存储 树:一种非线性结构,主要使用链表来存储,也可以使用数组存储. 本代码使用两种数组 元素数组:0,6,3,5,4,7,8,9,2 由于 0 索引不存储元素,所 ...

  5. 7.连连看的数据结构与算法(数组存储和图的邻接矩阵存储)。

    存储连连看地图可以用数组存储,也可以用把地图当做图来处理,用邻接矩阵来存储. 下面展示这两种方法的区别: 初始化图中边的算法思想: 其中有使用typedef语句定义数组类型https://www.cn ...

  6. Java数据结构与算法---栈(数组存储)

    今天用Java实现了数据结构中的栈,学会了操纵栈的一系列方法.关于栈的相关内容这里不做介绍,我只是将自己实现的代码分享出来,记录自己的学习进度同时希望能对其他朋友具有借鉴作用. 以下是用数组存储实现栈 ...

  7. 多维数组存储的两种方式

    1 数组存储的要求 数组存储的要求:连续存储. 连续:数组的n个元素对应n(或n+1)个内存地址,两相邻元素的地址相邻. 相邻元素:对于一维数组来说,相邻元素没有多大的选择,就是下标差绝对值为1的两元 ...

  8. matlab sort三维_三维数组存储顺序

    理解C语言--从小菜到大神的晋级之路(9)--多维数组 本节视频链接:点击这里 1.多维数组的定义和结构 一个数组中可以支持各种数据类型,那么一个数组中的每一个元素同样也可以是一个数组.对于上次提到的 ...

  9. C语言用char数组存储一串整数时的一个陷阱

    C语言用char数组存储一串整数时的一个小陷阱 C语言的一个关于char数组的小Tip 一.问题起源 二.问题代码 三.问题分析 (一).运行分析 (二).可能的解决方案 四.问题总结(不想看长篇大论 ...

  10. c语言用数组存储高精度数,高精度运算c语言.pptx

    <高精度运算c语言.pptx>由会员分享,可在线阅读,更多相关<高精度运算c语言.pptx(20页珍藏版)>请在人人文库网上搜索. 1.高精度运算,运算的前提条件:类型范围,确 ...

最新文章

  1. jsp java el_jsp之EL表达式
  2. 【必看】局域网ip地址不够用怎么办?
  3. 表的字段中的值需要替换怎么办?【if 函数,case when函数,中间表思路】
  4. 中国医科大学计算机在线作业,中国医科大学《计算机应用基础》在线作业及参考 答案.doc...
  5. Django(part46)--form表单验证
  6. MST(最小生成树)上的确定性和存在性问题
  7. 20190720学习小结
  8. oracle-- 文字与格式字符串不匹配
  9. 采用SyncToy2.1软件实现两台电脑间文件的自动实时同步(亲测有效)
  10. 水处理过滤器运行特性及选择原则浅谈
  11. 十个 Python 自动化常用操作
  12. 语言设置修复计算机 没有光盘,如何在Windows中创建系统修复光盘
  13. httpwatch使用
  14. 根据缠论选择盘整股票或者期货合约
  15. 浅析原代细胞应用现状
  16. 电脑时常断网和掉线的解决方法
  17. Windows下使用Jconsole远程监控Linux系统中java服务器资源占用情况
  18. onmouseover、onmouseenter、onmouseleave、onmouseout的区别
  19. Java--对象的比较2(类比)
  20. uniapp H5 二维码生成

热门文章

  1. 【论文撰写和程序员常用软件】
  2. Linux的SSH安装与配置OpenSSH
  3. 链路聚合LACP配置与结果验证
  4. ArcMap通过空间校正工具转换BJ-54坐标系到WGS-84坐标系
  5. 机器学习与物理科学(四)(Machine learning and the physical sciences)
  6. MOSFET、IGBT的结构与工作原理详解
  7. matlab三维作图知识点
  8. windows10安装dll文件
  9. wps怎么利用c语言编辑,WPS如何转换成图片?三种方法帮你实现
  10. 遗传算法GA优化BPNN