数据结构03--线性表

基本概念

线性表是最基本、最简单、也是最常用的一种数据结构。线性表中数据元素之间的关系是一对一的关系,即除了第一个和最后一个数据元素之外,其它数据元素都是首尾相接的。

线性表的基本特征

  • 第一个数据元素没有前驱元素;
  • 最后一个数据元素没有后继元素。
  • 其余每个数据元素只有一个前驱元素和一个后继元素;

抽象数据类型
线性表一般包括插入、删除、查找等基本操作。
代码如下:

public interface List<Item> {
   
    //线性表的大小
    public int size();
    //判断线性表是否为空
    public boolean isEmpty();
    //添加新元素
    public void add(Item item);
    //读取指定位置的元素
    public Item get(int index) throws Exception;
    //插入元素
    public void insert(int index,Item item) throws Exception;
    //删除第index个元素
    public Item delete(int index) throws Exception;
}

线性表的分类
线性表按物理存储结构的不同可分为顺序表(顺序存储)和链表(链式存储)。

  • 顺序表(存储结构连续,数组实现)
  • 链表(存储结构上不连续,逻辑上连续)

顺序表

顺序表是在计算机内存中以数组的形式保存的线性表,是指用一组地址连续的存储单元依次存储数据元素的线性结构。线性表采用顺序存储的方式存储就称之为顺序表。

其插入删除操作如图所示:
这里写图片描述
代码如下:

/**
 * 顺序表
 * @author Gain
 *
 */
public class SequentialList<Item> implements List<Item>{
   
    private int N;//记录元素个数
    
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
线性是一种常见的数据结构,它示具有相同数据类型的一组元素的有序序列。线性中的元素之间存在一种顺序关系,每个元素都有一个前驱和一个后继(除了第一个元素没有前驱,最后一个元素没有后继)。线性可以用顺序存储结构或链式存储结构实现。 在顺序存储结构中,线性的元素按照顺序存储在连续的内存空间中,可以通过元素的下标来访问和操作元素。插入或删除元素时,需要移动其他元素,因此操作的时间复杂度较高。 链式存储结构中,线性的每个元素都包含一个数据域和一个指针域,指针指向下一个元素。通过指针的链接,元素可以按照任意顺序存储在内存中,插入和删除操作只需要改变指针的指向,因此时间复杂度较低。 线性常见的操作包括插入、删除、查找、获取长度等。其中插入和删除操作需要注意保持线性的顺序关系。 常见的线性有数组、链、栈和队列。数组是最简单的线性,通过下标可以直接访问元素;链是动态存储结构,插入和删除操作方便,但访问元素需要遍历链;栈是一种特殊的线性,只允许在的一端进行插入和删除操作;队列也是一种特殊的线性,只允许在的一端进行插入操作,在另一端进行删除操作。这些数据结构在实际应用中都有各自的应用场景和优缺点。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值