【线性表】顺序表的基本特性

线性表是对顺序表、队列和栈的综合称呼,顺序表的本质就是数组。

 

线性表(Linear List):

  1. 数据元素之间一个挨着一个
  2. 具有相同特性数据元素的有限序列

线性表?顺序表?:

  1. 线性表是一种逻辑结构,表示元素之间一对一的相邻关系。
  2. 顺序表和链表是指存储结构!!
  3. 也即线性表表明数据之间的逻辑结构是线性的;顺序表和链表表明数据的存储结构是顺序的;

顺序表的本质就是:数组!顺序表等价于数组!

理解顺序存储结构:

  1. 是四大存储结构中的一种(顺序存储、链式存储、索引存储、散列存储);
  2. 大佬的定义:逻辑上相邻的结点存储在物理位置上相邻的存储单元中结点之间的逻辑关系由存储单元的邻接关系来体现
  3. 菜鸟的理解:具有线性关系的数据、按照前后的次序、全部存储在一整块连续的内存空间中,即用一组地址连续的存储单元、依次存储线性表的各个数据元素

如果一个数组为”a[10]={11,12,13,14,15,16,17,18,19.20}”。存储的是int型数据,所以该数组是int型数组,所以k的值为int型数据的宽度(即为4字节)。

顺序存储的特性:

  1. 第一个元素所在的地址就是这块存储空间的首地址通过首地址,可以轻松访问到存储的所有的数据。
  2. 可实现对结点的随机存取,即每一个结点对应一个序号由该序号可以直接计算出来结点的存储地址。

顺序表的定义:

#define SIZE 100   //存储空间初始分配量

typedef struct Sqlist
{
      int element[SIZE];   //数组存储数据元素,最大长度为SIZE
      int current;     //线性表当前长度
}Sqlist, * PSqlist;

注:在编程开发中,直接使用的是数组,几乎不用线性表。所以我们直接用数组来代替它。

#include <stdio.h>
#define SIZE 10

int main()
{
    int a[SIZE];
    ...    

    return 0;
}

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值