2.1线性表的基本概念 

线性表按存储方式的不同,可以划分为顺序表和链表。线性表是具有相同数据类型的n个数据元素的有限序列,n为表长,当n=0时为空表。

线性表是一种逻辑结构,具有以下特点:

表中的元素具有先后次序,具有逻辑上的顺序关系

表中元素的数据类型要相同

表中元素的个数有限

2.2线性表的顺序表示

概念:顺序表是线性表的顺序存储,用一组地址连续的存储单元依次存放线性表中的数据元素,从而使得在逻辑上相邻的数据元素在物理上也相邻。

顺序表的特点是表中元素的逻辑顺序与其物理顺序相同

当要按位查找表中的一个元素的时候不需要遍历,通过首地址和元素序号只需要O(1)就可以得到某一位上的元素,故顺序表具有可以随机访问的优点。

顺序表的基本操作——在指定位置插入元素,平均时间复杂度为O(n)

bool ListInsert(SqList &L,int i,int e){     //在指定位置插入的元素if(i<1||i>L.length+1){      //插入操作有效范围只能在1到L.length+1之间return false;}if(L.length==MaxSize){      //当前存储空间已满return false;}for(int j=L.length;j>=i;j--){       //当数组里有L.length个元素的时候,数组下标的最后一个是L.length-1L.data[j] = L.data[j-1];        //循环把每一个元素都赋给后一个位置,直到空出待插入位置}L.data[i] = e;L.length++;return true;
}

顺序表的基本操作——删除指定位置的元素,平均时间复杂度为O(n)

bool ListDelete(SqList &L,int i,int &e){        //删除指定位置上的元素if(L.length == 0){      //当前表为空return false;}if(i<1||i>L.length){        //不满足可删除范围return false;}e = L.data[i-1];for(int j=i-1;j<L.length;j++){      //找到待删除位置,然后逐个把之后的元素覆盖前一个L.data[i-1] = L.data[i];}L.length--;return true;
}

顺序表的基本操作——顺序查找,平均时间复杂度为O(n)

int LocateElem(SqList L,int e){     //顺序查找元素for(int i=0;i<L.length+1;i++){if(L.data[i]==e){return i+1;}}return false;}

数据结构考研复习(自用非408)顺序表相关推荐

  1. 2019数据结构考研复习指导习题代码(王道论坛)

    2019数据结构考研复习指导习题代码(王道论坛) 1.从顺序表删除具有最小值的元素(假设唯一)并由函数返回被删除元素的值.空出的位置由最后一个元素补充,若顺序表为空则显示出错信息并退出运行. bool ...

  2. 2021考研——复习规划(408篇)

    注:本篇文章所有内容均来自我的知乎专栏:2021考研-复习规划(英语篇)- Mr.鹏的文章 ,著作权归本人所有. 2021考研--复习规划(408篇) 文章目录 前言 一.考试分析 1.考察学科范围 ...

  3. 数据结构个人笔记 第三课 顺序表和单链表

    数据结构个人笔记 第三课 顺序表和单链表 顺序表的基本操作 插入元素 删除元素 顺序表查找元素 顺序表更改元素 本节总结代码 单链表 链表的节点 头节点.头指针和首元结点 链表的创建(初始化) 本节总 ...

  4. 数据结构考研复习知识点梳理(自用非408)第一章

    第一章.绪论 1.1什么是数据结构 1.数据元素是数据的基本单位,在计算机程序中通常作为一个整体考虑和处理 2.一个数据元素可以由若干个数据项构成,数据项是数据的不可分割的最小单位 3.数据对象是性质 ...

  5. 《数据结构》实验报告二:顺序表 链表

    一.实验目的 1.掌握线性表中元素的前驱.后续的概念. 2.掌握顺序表与链表的建立.插入元素.删除表中某元素的算法. 3.对线性表相应算法的时间复杂度进行分析. 4.理解顺序表.链表数据结构的特点(优 ...

  6. (PTA)数据结构(作业)2、顺序表

    判断题 1.数据的逻辑结构是指数据的各数据项之间的逻辑关系.  F 数据的逻辑结构是指数据的各数据元素之间的逻辑关系. 2.顺序表中逻辑上相邻的元素,其物理位置也一定相邻.  T 线性表的顺序表示指的 ...

  7. 数据结构c语言版严蔚敏 顺序表

    说来惭愧由于贪玩,数据结构挂科了,现在重新学一遍数据结构,用博客督促一下自己,希望各位同学引以为戒,贪玩一时爽,痛苦永留存. 本文主要以严老师的数据结构书为主. 结构类型 listsize代表这个顺序 ...

  8. 数据结构与算法(8-1)顺序表查找及优化

    目录 一.顺序表查找 二.顺序表查找优化(重点) 总代码 一.顺序表查找 从头到尾或从尾到头查找. //顺序表查找(需要判断两次) int ListSearch(char ch) {for (int ...

  9. 数据结构(严蔚敏)之一——顺序表之c语言实现

    顺序表结构的实现: #include <stdio.h> #include <stdlib.h> #include <malloc.h>#define LIST_I ...

最新文章

  1. java applet 缺陷_Java Applet在最新JRE上的奇怪性能行为(7.55)
  2. PubChem的Python接口PubChemPy
  3. Android NDK开发-3-环境搭建
  4. java 滚动条 滚动_广告条随滚动条的移动而移动
  5. Dalsa线扫相机SDK开发-小试牛刀(1)
  6. CentOS7 防火墙规则 (firewalld)
  7. SQL Server 2014 新建数据库
  8. JavaScript面向对象之构造函数
  9. 面试归来,感觉无望,下次再战
  10. 网页视频之H5+Mse
  11. dsp c语言程序设计,DSP C语言程序设计.pdf
  12. hdfs--Structured Streaming--console案例
  13. [canvas基础]pcmobile写字板
  14. K3s(Kubernetes)环境使用Let‘s Encrypt证书的部署及自动配置https域名-阿里云域名解析管理
  15. uniapp APP 接入萤石云
  16. ubuntu镜像源的配置
  17. html怎么做左侧广告,网站横幅怎么制作,html横幅广告代码
  18. MySQL报错`ERROR: No query specified`
  19. 创业失败的工程师内心依旧有代码
  20. python中缺省值处理函数DataFrame.fillna()

热门文章

  1. 为何合众达 DM642 捕获和显示的SDRAM区为何要留720*588的大小?
  2. 勒索病毒资料(腾讯管家整理)
  3. 集成学习——Boosting(AdaBoost,Gradient Boosting)
  4. python--Matplotlib(一)
  5. 适用于分类,检测,分割的生成式知识蒸馏开源
  6. SQL Server Managerment Studio 连接与远程登录Windows Server 2005 之间的诡异关系 还请高手 解惑
  7. 国服WLK野德德鲁伊专用宏整理:野德新手练级副本宏
  8. 数论之因子和与因子个数
  9. 20217高考成绩查询,2017年高考各分数段的官方统计!
  10. AIGC万字百科全书:底层原理、应用场景、工具示例、行业现状、发展趋势