博客
关于我
线性表 插入对比
阅读量:404 次
发布时间:2019-03-04

本文共 911 字,大约阅读时间需要 3 分钟。

线性表是数据存储的两种主要方式之一,常用于列表操作中。其基本操作包括插入、删除和查找。

顺序表的插入操作是其常见操作之一。在指定位置插入新元素时,需注意以下几点:

插入前的表结构为:a1, a2, ..., ai-1, ai, ai+1, ..., an。

插入后的表结构为:a1, a2, ..., ai-1, x, ai, ai+1, ..., an,其中1 ≤ i ≤ n+1。

以下是C语言实现顺序表插入操作的代码示例:

int Insert_SeqList(SeqList *L, int i, datatype x){    int j;    if (L->last == MAXSIZE - 1)    {        printf("表满");        return -1;    }    if (i < 1 || i > L->last + 2)    {        printf("位置错误");        return 0;    }    for (j = L->last; j > i - 1; j--)    {        L->data[j + 1] = L->data[j];    }    L->data[i - 1] = x;    L->last++;    return 0;}

链表插入示例:以下是单链表的插入代码示例:

LinkList Creat_LinkList1(){    LinkList L = NULL;    LNode *s;    int x;    scanf("%d", &x);    while (x != flag)    {        s = (LNode *)malloc(sizeof(LNode));        s->data = x;        s->next = L;        L = s;        scanf("%d", &x);    }    return L;}

链表与顺序表的主要区别在于存储方式和访问效率。插入操作在链表中只需修改两个指针即可完成,而顺序表则需移动大量数据。

转载地址:http://jzkh.baihongyu.com/

你可能感兴趣的文章
OpenCV与AI深度学习 | 实战 | OpenCV传统方法实现密集圆形分割与计数(详细步骤 + 代码)
查看>>
OpenCV与AI深度学习 | 实战 | OpenCV实现扫描文本矫正应用与实现详解(附源码)
查看>>
OpenCV与AI深度学习 | 实战 | 使用YOLOv8 Pose实现瑜伽姿势识别
查看>>
OpenCV与AI深度学习 | 实战 | 使用YoloV8实例分割识别猪的姿态(含数据集)
查看>>
OpenCV与AI深度学习 | 实战 | 使用姿态估计算法构建简单的健身训练辅助应用程序
查看>>
OpenCV与AI深度学习 | 实战 | 基于YoloV5和Mask RCNN实现汽车表面划痕检测(步骤 + 代码)
查看>>
OpenCV与AI深度学习 | 实战 | 基于YOLOv9和OpenCV实现车辆跟踪计数(步骤 + 源码)
查看>>
OpenCV与AI深度学习 | 实践教程|旋转目标检测模型-TensorRT 部署(C++)
查看>>
OpenCV与AI深度学习 | 干货 | 深度学习模型训练和部署的基本步骤
查看>>
OpenCV与AI深度学习 | 手把手教你用Python和OpenCV搭建一个半自动标注工具(详细步骤 + 源码)
查看>>
OpenCV与AI深度学习 | 深度学习检测小目标常用方法
查看>>
Opencv中KNN背景分割器
查看>>
OpenCV中基于已知相机方向的透视变形
查看>>
OpenCV中的监督学习
查看>>
opencv中读写视频
查看>>
opencv之cv2.findContours和drawContours(python)
查看>>
opencv之namedWindow,imshow出现两个窗口
查看>>
opencv之模糊处理
查看>>
Opencv介绍及opencv3.0在 vs2010上的配置
查看>>
OpenCV使用霍夫变换检测图像中的形状
查看>>