高级语言与数据结构的关系

数据结构:逻辑结构+存储结构,所以说数据结构是存储数据的一种方式
逻辑结构:一对一+一对多+多对多       线性结构+树形结构+图形结构
存储结构:连续存储+链式存储
逻辑结构和存储结构的关系: 每一种逻辑结构都可以用对应的存储结构实现存储
线性结构:连续存储+链式存储
树形结构+图形结构:链式存储

存储结构的高级语言实现:
1连续存储
连续存储又分为静态连续存储和动态连续存储,
静态连续存储可以用高级语言的数组实现,是在程序编译时申请的内存,静态确定数组的大小
动态连续存储可以使用高级语言的arrayList实现,是在程序运行时申请的内存,动态确定数组的大小
2链式存储
链式存储结构可以用高级语言的指针实现

那么编程时如何选择存储结构呢?
从时间复杂度考虑:如果已知问题执行的插入/  删除操作比较多的话,选择链式存储结构;如果已知问题执行的查询操作比较多的话,选择连续存储结构;
从空间复杂度考虑:如果已知问题有明确的规模,选择静态连续存储结构;如果已知问题没有明确的规模,选择动态连续存储结构或者链式存储结构
一般分析一个程序的好坏时,主要从两个方面进行考虑:时间复杂度/空间复杂度


存储空间与高级语言的数据类型的对应关系
另外高级语言的数据类型对应的存储,高级语言规定指定的数据类型有指定的大小的存储空间,那么对于高级语言没有规定的大整数,高级语言又是如何存储的呢?高级语言通过他的连续存储结构数组实现对大整数的存储

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值