数据结构---静态顺序表

本文介绍了如何在Linux系统下实现静态顺序表,包括结构体定义、初始化、插入、删除、读取、修改和查找等功能。代码经过测试,确保功能正确性,适合初学者学习和实践。
摘要由CSDN通过智能技术生成

简单静态顺序表实现

本篇全部代码都在Linux系统下完成

概念:

用一段地址连续的单元依次存储数据元素的线性结构,顺序表又分为静态顺序表和动态顺序表

功能:

  • 初始化顺序表
  • 在表尾插入数据
  • 在表头插入数据
  • 删除表尾数据
  • 删除表头数据
  • 读取任意位置元素
  • 修改任意位置元素
  • 查找指定元素值的下标
  • 在表中任意位置插入元素
首先创建一个结构体Seqlist,在结构体中我们定义了一个数组seqlist,用来存放数据,以及一个无符号整形变量size,用来控制顺序表有效数据的个数。
即我们通过一个简单的数组实现顺序表的一些功能
  8 #define SeqlistMax 50
  9 typedef char Type;
 10 typedef struct Seqlist{
 11     Type seqlist[SeqlistMax];
 12     size_t size;
 13     }Seq;
接下来我们将顺序表初始化一下
  4 void SeqlistInit(Seq* seq)
  5 {
  6     if(NULL == seq){
  7         printf("INPUT ERROR!\n");
  8         return;
  9         }
 10     seq->size = 0;
 11 } 
我们在用指针当做形参时,必须要判断其是否为空,如果不为空,才能进行接下来的工作。初始化完成之后我们再进行接下来的功能实现,函数内部只实现一个数据的插入与删除,如果想进行多个数据的操作,可以在测试函数中实现。

  • 尾部插入
 26 void SeqlistPushBack(Seq* seq ,Type A)
 27 {
 28     
 29     if(NULL == seq){
 30         printf("INPUT ERROR!\n");
 31         return;
 32         }
 33     if(seq->size>=SeqlistMax){
 34         printf("The excel is full\n");
 35         
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值