【数据结构】线性表的定义及基本操作

文章目录


前言

数据结构的三要素是逻辑结构、数据的运算、存储结构(物理结构),存储结构不同,运算的实现方式也不同。

本次文章包括线性表的定义和基本操作,其中线性表的定义属于三要素中的逻辑结构,基本操作属于三要素中的运算。


线性表的定义

线性表是具有相同数据类型的n(n>=0)个数据元素的有限序列,其中n为表长,当n=0时线性表是一个空表。若用L命名线性表,则一般表示为L=(a1,a2,...ai,ai+1,...,an)。

需要理解的重要概念有表长、空表、表头、表尾、前驱、后继、位序,"已经放入思维导图中"👇

注意:位序从1开始,数组下标从0开始

线性表的基本操作

基本操作

  1. InitList (&L):初始化表。构造一个空的线性表L,分配内存空间。
  2. DestroyList (&L):销毁操作。销毁线性表,并释放线性表L所占用的内存空间。
  3. ListInsert (&L,i,e):插入操作。在表L中的第i个位置上插入指定元素e。
  4. ListDelete (&Li,&e):删除操作。删除表L中第i个位置的元素,并用e返回删除元素的值。
  5. LocateElem (L,e):按值查找操作。在表L中查找具有给定关键字值的元素。
  6. GetElem (L,i):按位查找操作。获取表L中第i个位置的元素的值。

其他常用操作

  1. Length (L):求表长。返回线性表L的长度,即L中数据元素的个数。
  2. PrintList (L):输出操作。按前后顺序输出线性表L的所有元素值。
  3. Empty (L):判空操作。若L为空表,则返回true,否则返回false 。

    Tips:
    ①对数据的操作(记忆思路------创销、增删改查)
    ②C语言函数的定义------<返回值类型>函数名(<参数1类型>参数1,<参数2类型>参数2,)
    ③实际开发中,可根据实际需求定义其他的基本操作
    ④函数名和参数的形式、命名都可改变
    ⑤什么时候要传入引用"&"------对参数的修改结果需要"带回来
    注意:命名要有可读性

总结

以上就是今天的学习内容啦~

如果有兴趣的话可以订阅专栏,持续更新呢~

咱们下期再见~

相关推荐
fengci.3 小时前
CTF2MISC中等部分
开发语言·前端·学习
vvilkim3 小时前
数据结构类型、区别与应用场景:一篇讲透选型逻辑
数据结构
xys_6784 小时前
JavaEE通关手册:初识Java
java·开发语言
ShineWinsu5 小时前
对于Qt:QTableWidget常见属性以及QTableWidgetItem类的解析
开发语言·c++·qt·gui·客户端·表格·qtablewidget
ShineWinsu6 小时前
对于Qt:QListWidget常见属性以及QListWidgetItem类的解析
开发语言·c++·qt·客户端·列表·qlistwidget·qlistwidgetitem
吴名氏.6 小时前
Java转AI Agent教程(第十二周)检索与切分
java·开发语言·人工智能·ai·ai agent
瑞雪兆丰年兮7 小时前
JavaWeb-day10-SpringBootWeb案例
java·开发语言·javaweb·web
Elastic 中国社区官方博客7 小时前
更少的位数,相同的召回率:DiskBBQ 更保守的自动校准扫描
大数据·运维·开发语言·人工智能·elasticsearch·搜索引擎
阿卡好可爱7 小时前
Lua 热更新不生效:改完文件线上仍是旧逻辑,package.loaded 与 upvalue 重绑定详解
数据结构·分布式·后端·架构·lua
三雷科技8 小时前
第6章第4节:自定义分词器
开发语言·c#