静态顺序表

 typedef int DataType;#define MAX_SIZE (100)typedef struct SeqList {DataType array[MAX_SIZE];int size;    // 当前可用下标} SeqList;

动态顺序表

 typedef int DataType;typedef struct SeqListD {DataType * array;int capacity;    // 当前容量 等于 静态顺序表 MAX_SIZEint size;        // 同静态顺序表} SeqListD;

区别

  • 静态顺序表和动态顺序表唯一一点不同的是,静态顺序表再创建顺序表的时候容量已经确定为MAX_SIZE,不可以更改,而动态顺序表的容量是由malloc函数动态开辟,当容量不够用时可以增加容量capacity
  • 扩容方法:动态开辟一块新的空间(一般为原空间的两倍),将原空间的数据拷贝到新的空间,然后让array指针指向新的空间并且释放旧空间

优缺点比较

  • 静态顺序表创建空间时为静态开辟,不用malloc函数,代码相对简单(一点点),不存在内存泄露问题
  • 动态顺序表,动态开辟空间,使用相对灵活,相比于静态开辟空间也可以少空间浪费

静态顺序表和动态顺序表区别的优缺点比较相关推荐

  1. shardingjdbc全局表_Sharding-JDBC动态分表实现

    Sharding-JDBC动态水平分表实现 背景: 在项目中遇到了按照日期动态水平分表的需求,系统属于监控系统,每10分钟保存一次监控数据,并且每次要采集200个节点上的数据,即每次采集数据(间隔10 ...

  2. 静态顺序表和动态顺序表区别

    静态顺序表的定义 #define MaxSize 10 //定义最大长度 typedef int ElemType; typedef struct{ Elemtype data[MaxSize]: / ...

  3. 线性表之顺序表与单链表的区别及优缺点

    这里比较的是基于C语言实现的顺序表与单链表,与其他语言的实现可能会有差异,但我相信语言是相通的,它们的实现机制应该也差不多. 1.What 什么是顺序表和单链表 ①顺序表: 顺序表是在计算机内存中以数 ...

  4. 【线性表】—动态顺序表的增删查改实现

    小菜坤日常上传gitee代码:https://gitee.com/qi-dunyan(所有的原码都放在了我上面的gitee仓库里) 数据结构知识点存放在专栏[数据结构]后续会持续更新 ❤❤❤ 个人简介 ...

  5. c语言pushback用法,C语言:【动态顺序表】动态顺序表的初始化、打印、尾插PushBack、尾删PopBack...

    #include #include #include #include #include typedef int DateType; typedef struct SeqList { DateType ...

  6. python动态生成数据库表_Python-Flask:动态创建表的示例详解

    今天小编从项目的实际出发,由于项目某一个表的数据达到好几十万条,此时数据的增删查改会很慢:为了增加提高访问的速度,我们引入动态创建表. 代码如下: from app_factory import ap ...

  7. 在MySQL中实现交叉表查询2(动态交叉表)

    在MySQL中实现交叉表查询2(动态交叉表) 交叉表分为静态交叉表和动态交叉表.其中静态交叉表中的列是固定的,因此相对容易实现:而动态交叉表中的列需要动态生成. 一.静态交叉表的实现 参见上一篇文章: ...

  8. Mysql预编译动态拼接表名查询

    1.实现目标,现在对deal_runnning表进行按年月分表,需要动态拼接表名查询 2.需要执行此sql .表名要动态拼接,目标sql如下,使用concat连接表名无效. SELECT id, ba ...

  9. mysql 动态 建表,mysql数据库动态创建表的实例分享

    摘要 腾兴网为您分享:mysql数据库动态创建表的实例分享,易视云3,完美root,刷机大师,手游宝等软件知识,以及清仓兔,找明星,爱普生1500w,txt完结小说全本软件,windows自带画图软件 ...

最新文章

  1. 有哪些好的 LaTeX 编辑器?
  2. vue2.0搭建vue手脚架(vue-cli)
  3. Spring安全:防止暴力攻击
  4. java 线程状态_浅析Java中的线程状态
  5. Http API笔记
  6. 什么题材的短视频最吸引人观看?
  7. openwrt添加模块时编译报No rule to make target `install'
  8. ubuntu18.04安装mysql8.0中遇到的问题及解决方法
  9. java sdk怎么配置_Java SDK环境配置教程
  10. python菜鸟教程基础入门
  11. 计算机类研究生求职经历以及经验共享(转)
  12. Java_写出java MyJava abc cde efg 运行的结果(向main()方法中传参)
  13. 行政区域村级划分数据库_两区划定数据库规范
  14. Photoshop学习(十六):利用蒙版合成图像
  15. 海洋cms模板免费下载
  16. 什么是字节序(端序、低端字节序、高端字节序、网络字节序)
  17. SQL-SQL函数(二)Scalar 函数
  18. arch Linux 作妖记录(U盘启动)
  19. OrangePi3开发板使用指南
  20. 代谢组学数据处理软件——NormalizeMets

热门文章

  1. 微信如何解绑小程序_微信小程序解绑事件,微信小程序解除绑定
  2. (语法糖)ES6类class声明类的方式 -ES5类声明继承
  3. 古风文字素材_适合手帐的古风文字素材
  4. 南加大计算机专业本科sat要求,南加州大学SAT成绩要求
  5. mysql select 反选_checkbox的全选与反选
  6. 配一副适合程序员的眼镜
  7. 2017-2018-1 20162316刘诚昊 实验一 线性结构
  8. 各类轴承故障数据说明
  9. 安卓Android系统超级终端(终端模拟…
  10. 【POj1305】毕达哥拉斯三元组