数据结构--顺序表及实现(c语言)

  • 线性表是具有相同特性数据元素的一个有限序列。
  • 顺序表是线性表的一种,在逻辑结构上具有一对一关系,每一个结点有且只有一个前驱和后继结点,表头没有前驱结点,表尾没有后继结点
    在这里插入图片描述
  • 顺序表的优点
    1、存储密度大
    2、可以随机存取表中的任一元素,时间复杂度为O(1)
  • 顺序表的缺点
    1、在插入,删除的时候,需要移动大量的元素,时间复杂度为O(n^2)
    2、实际情况无法预知顺序表的容量大小,定义一个存储数组时,容易造成存储空间浪费
    3、属于静态存储形式,数据元素的个数不能自由扩充
  • 顺序表的代码实现(c语言,主要操作是删除和插入)
#include <stdio.h>
#include <stdlib.h>
#define MAXSIZE 10

typedef struct SqList
{
   
    int *data;
    int length;
}SqList;

//线性表的初始化
void InitSqList(SqList *L)
{
   
    L->data = (int*)malloc(sizeof(int)*MAXSIZE);
    if(L->data)
        printf("空间分配成功\n");
    L->length = 0;
}
//写入数据
void WriteSqList(SqList *L)
{
   
    for
  • 1
    点赞
  • 22
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值