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

文章目录


前言

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

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


线性表的定义

线性表是具有相同数据类型的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,)
    ③实际开发中,可根据实际需求定义其他的基本操作
    ④函数名和参数的形式、命名都可改变
    ⑤什么时候要传入引用"&"------对参数的修改结果需要"带回来
    注意:命名要有可读性

总结

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

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

咱们下期再见~

相关推荐
国服第二切图仔30 分钟前
Rust开发实战之简单游戏开发(piston游戏引擎)
开发语言·rust·游戏引擎
ii_best37 分钟前
安卓/IOS工具开发基础教程:按键精灵一个简单的文字识别游戏验证
android·开发语言·游戏·ios·编辑器
草莓熊Lotso40 分钟前
C++ 继承特殊场景解析:友元、静态成员与菱形继承的底层逻辑
服务器·开发语言·c++·人工智能·经验分享·笔记·1024程序员节
诗句藏于尽头43 分钟前
电脑使用软件控制本机屏和外接屏失效问题及解决
开发语言
不是株1 小时前
JavaWeb(后端进阶)
java·开发语言·后端
周杰伦_Jay1 小时前
【Python后端API开发对比】FastAPI、主流框架Flask、Django REST Framework(DRF)及高性能框架Tornado
数据结构·人工智能·python·django·flask·fastapi·tornado
千里镜宵烛2 小时前
深入 Lua 环境机制:全局变量的 “容器” 与 “隔离术”
开发语言·junit·lua
QX_hao8 小时前
【Go】--反射(reflect)的使用
开发语言·后端·golang
inferno8 小时前
Maven基础(二)
java·开发语言·maven
我是李武涯8 小时前
从`std::mutex`到`std::lock_guard`与`std::unique_lock`的演进之路
开发语言·c++