02-数据结构-线性表

线性表的特点:

(1)存在惟一一个被称为"第一个"的数据元素

(2)存在惟一一个被称为"最后一个"的数据元素

(3)除第一个之外,集合中每一个数据元素均只有一个前驱

(4)除最后一个之外,集合中每个数据均只有一个后继

线性表是n个数据元素的有限序列

线性表的List基本操作:

InitList(&L)//构造一个空线性表

DestroyList(&L)//消毁线性表

ClearList(&L)//清空

ListEmpty(L)//是否是空表

ListLength(L)//元素个数

GetElem(L,i,&e)//返回对应的元素

LocateElem(L,e,compare())//返回第1个满足对比关系元素的位置

PriorElem(L,cur_e,&pre_e)//cur_e是L的元素不是第一个, 返回他的前驱元素

NextElem(L,cur_e,&next_e)//cur_e是L的元素不是第一个, 返回他的后继元素

ListInsert(&L,i,e)//指定位置插入元素

ListDelete(&L,i,&e)//指定位置删除元素

ListTraverse(L,visit())//每一个元素调用visit()操作

1.线性表的顺序表示是指用一组地址连续的存储单元依次存储线性表的数据元素。

最常见的一种形式是数组。数组是线性表顺序表示的一种。

2.线性表的链式表示:不要求逻辑上相邻的元素在物理位置上也相邻,相比较顺序表示来说,优点:插入和删除操作,无需移动大量元素,速度更快,扩展性强。缺点:无法随机存取

(1).线性链表(单链表)

(2).循环链表

(3).双向链表

相关推荐
硅基手札1 分钟前
【linux内核专栏 09】内核模块与 kbuild
linux·架构
流浪0018 分钟前
Linux系统篇43——线程(八) 线程的数据不一致问题,从 ticket-- 的非原子性说起
linux·操作系统·线程·线程安全·锁
Είναι η κοπέλα23 分钟前
WSL2 部署 AI 开发环境:内核级 Linux + GPU 直通
linux·运维·人工智能
其实防守也摸鱼25 分钟前
网安自测题:掌握核心知识点的实用练习
linux·运维·服务器·前端·数据库·sql·xss
木白CPP27 分钟前
[QNX] 深入理解 Resource Manager 接口设计
linux·服务器·数据库
AlfredZhao30 分钟前
别再 rm 日志了:Linux 下安全清空日志文件的正确姿势
linux
星恒随风33 分钟前
Linux开发工具详解(二):Git版本控制、GitHub协作与GDB调试实战
linux·笔记·git·学习·github
Mortalbreeze37 分钟前
MySQL 基础篇(五):数据操作基础 —— CRUD
linux·服务器·数据库·mysql
Ivanqhz10 小时前
激活函数在 Transformer 中的作用及各种变体简述
java·linux·数据库·人工智能·深度学习
殷色玫瑰13 小时前
C/C++ 内存管理详解:从内存分布到 new/delete 底层原理
java·linux·c语言·c++