幽兰生空谷
--绝世独自开

数据结构顺序表的实现--静态分配

顺序表——用顺序存储的方式实现线性表顺序存储。把逻辑上相邻的元素存储在物理位置上也相邻的存储单元中,元素之间的关系由存储单元的邻接关系来体现。

//顺序表的实现--静态分配 
#include <stdio.h>
#define MaxSize 10     //定义最大长度
typedef struct{
	int data[MaxSize]; //用静态的“数组”存放数据元素
	int length;        //顺序表当前长度 
}SqList;               //顺序表的类型定义
//基本操作--初始化一个顺序表
void InitList(SqList &L){
	for(int i=0;i<MaxSize;i++)
		L.length=0;     //顺序表初始长度为0 
} 
int main(){
	SqList L;           //声明一个顺序表 
	InitList(L);        //初始化顺序表
	//尝试“违规”打印整个data数组
	for(int i=0;i<MaxSize;i++)
		printf("data[%d]=%d\n",i,L.data[i]);
	return 0; 
} 

运行结果:

Ps:

1.在内存中分配存储顺序表 L 的空间。包括:MaxSize*sizeof(ElemType)和 存储 length 的空间

2.ElemType 就是你的顺序表中存放的数据元素类型。

3.如何知道一个数据元素大小?C语言 sizeof(ElemType) 例:sizeof(int) = 4B

4.给各个数据元素分配连续的存储空间,大小为MaxSize*sizeof(ElemType)

5.没有设置数据元素的默认值;内存中会有遗留的“脏数据”。

赞(3) 打赏
版权声明:本文采用知识共享 署名4.0国际许可协议 [BY-NC-SA] 进行授权
文章名称:《数据结构顺序表的实现--静态分配》
文章链接:https://www.itheibai.com/archives/885
免责声明:根据《计算机软件保护条例》第十七条规定“为了学习和研究软件内含的设计思想和原理,通过安装、显示、传输或者存储软件等方式使用软件的,可以不经软件著作权人许可,不向其支付报酬。”您需知晓本站所有内容资源均来源于网络,仅供用户交流学习与研究使用,版权归属原版权方所有,版权争议与本站无关,用户本人下载后不能用作商业或非法用途,需在24个小时之内从您的电脑中彻底删除上述内容,否则后果均由用户承担责任;如果您访问和下载此文件,表示您同意只将此文件用于参考、学习而非其他用途,否则一切后果请您自行承担,如果您喜欢该程序,请支持正版软件,购买注册,得到更好的正版服务。
本站是非经营性个人站点,所有软件信息均来自网络,所有资源仅供学习参考研究目的,并不贩卖软件,不存在任何商业目的及用途,网站会员捐赠是您喜欢本站而产生的赞助支持行为,仅为维持服务器的开支与维护,全凭自愿无任何强求。

评论 抢沙发

评论前必须登录!

 

养成“打赏”的好习惯,从我做起!

非常感谢你的打赏,我们将继续给力更多优质内容,让我们一起创建更加美好的网络世界!

支付宝扫一扫

微信扫一扫

登录

找回密码

注册