• 线性表的顺序存储结构


    线性表的顺序存储结构,指的是用一段地址连续的存储单元依次存储线性表的数据元素。

    线性表的顺序存储结构代码

    #define MAXSIZE 20     /*存储空间初始分配量*/

    typeded int ElemType ;  /*ElemType类型根据实际情况而定,这里假设为int */

    typedef struct

    {

      ElemType data[MAXSIZE];  /*数组存储数据元素,最大值为MAXSIZE*/

      int length;                            /*线性表当前长度*/

    }SqList;

    这里,我们就发现描述顺序存储结构需要三个属性:

    存储空间的起始位置:数组data,它的存储位置就是存储空间的存储位置

    线性表的最大存储容量:数组长度MaxSiz。

    线性表的当前长度:length。

     数据长度与线性表长度的区别

    数组的长度是存放线性表的存储空间的长度,存储分配后这个量一般是不变的

    线性表的长度是线性表中数据元素的个数,随着线性表插入和删除操作的进行,这个量是变化的。

    在任意时刻,线性表的长度应该都小于等于数组的长度。

    线性表顺序存储结构的优缺点

    优点:无须为表示表中元素之间的逻辑关系而增加额外的存储空间,可以快速的存取表中任一位置的元素

    缺点:插入和删除操作需要移动大量元素,当线性表长度变化较大时,难以确定存储空间的容量,造成存储空间的碎片

    /*线性表的单链表存储结构*/

    typedef struct Node

    {

      ElemType data;

      struct Node *next;

    }Node;

    typedef struct Node *LinkList;     /*  定义LinkList  */

    结点由存放数据元素的数据域和存放后继结点地址的指针域组成。

  • 相关阅读:
    Yii2 在模块modules间跳转时,url自动加模块名
    PHP 变量的间接引用(将某一字符串转化为变量)
    windows鼠标悬停任务栏 延迟时间 修改
    dede 常用标签和调用方法汇总
    dedecms ---m站功能基础详解
    apache 2.2 和2.4 目录权限访问设置的区别
    apache httpd.conf 配置局域网访问
    ajax php 点击加载更多
    dede调用当前栏目名 、dede sql
    dede 添加 栏目缩略图
  • 原文地址:https://www.cnblogs.com/123talents/p/7497197.html
Copyright © 2020-2023  润新知