数据结构之洞悉线性表

2017-12-03  本文已影响0人  Aaron_ZhangKH

前言

线性表是数据结构中最基本的一种数据存储方式,深入了解线性表的特性不仅有助于更好地理解复杂数据结构(例如栈、队列等),还能给程序员的日常工作所需的内功大法打下一个基础。本文会从“定义”、“模型类比”、“性能评价”等多个维度对“顺序存储结构”、“链式存储结构”等线性表结构进行循序渐进的阐述,如有错误或描述不清的地方, 欢迎指导。

什么是线性表?

线性表即零个或多个有限元素的有限序列。

线性表结构👇👇👇

线性表结构

非线性表结构👇👇👇

非线性表结构

线性表的顺序存储结构

线性表的链式存储结构

链式存储结构和顺序刚好相反,它没有固定长度,而且物理空间也是不连续的,因此除非系统的所有内存空间都被用完了, 否则不存在内存溢出问题。

单链表的插入操作

结语

对比顺序存储结构和链式存储结构后的数据操作性能后, 我们会发现两者在时间复杂度上的表现是刚好相反的,由此也可以得出一个简单的结论,对于长度不变且不需要频繁进行插入和删除操作的数据结构,我们应该使用顺序存储结构,而对于长度不确定且需要频繁进行插入和删除操作的数据结构,我们应该优先使用链式存储结构。两者各有利弊,而且有不同的适用场景,应该根据需求选择性地使用。

上一篇 下一篇

猜你喜欢

热点阅读