当前位置: 首页 > news >正文

网站开发与应用课程讨论17年wordpress

网站开发与应用课程讨论,17年wordpress,app制作软件公司,西安软件公司排行榜文章目录 顺序表的定义顺序表的实现静态分配动态分配动态申请内存空间#xff0c;动态释放内存空间#xff08;malloc#xff0c;free#xff09; 顺序表的特点总结 顺序表的定义 顺序表也就是用顺序存储的方式实现线性表。 顺序存储。把逻辑上相邻的元素存储在物理位置上… 文章目录 顺序表的定义顺序表的实现静态分配动态分配动态申请内存空间动态释放内存空间mallocfree 顺序表的特点总结 顺序表的定义 顺序表也就是用顺序存储的方式实现线性表。 顺序存储。把逻辑上相邻的元素存储在物理位置上也相邻的存储单元中元素之间的关系由存储单元的邻接关系来体现。 顺序表的实现 静态分配 在静态分配时由于数组的大小和空间事先已经固定一旦空间占满再加入新的数据就会产生溢出进而导致程序崩溃。 在使用静态存储时首先定义一个最大长度然后声明顺序表在声明的顺序表中使用数组存放数据元素定义当前长度length代码如下。 Sqsequence顺序序列 #include stdio.h// 静态存储 // 定义最大长度,最大为10个,所以只能存放10个 #define MaxSize 10 // 声明顺序表 typedef struct {// 用静态的数组存放数据元素int data[MaxSize];// 顺序表的当前长度int length; }SqList; // 顺序表的类型定义初始化顺序表 声明顺序表后需要初始化顺序表将所有数据元素设置为默认初始值顺序表的初试长度设置为0这一步必须做 如果没有初始化顺序表则内存中会有遗留的脏数据所以将length的值设置为0这一步必须做 初始化代码如下 #include stdio.h// 静态存储 // 定义最大长度,最大为10个,所以只能存放10个 #define MaxSize 10 // 声明顺序表 typedef struct {// 用静态的数组存放数据元素int data[MaxSize];// 顺序表的当前长度int length; }SqList; // 顺序表的类型定义// 初始化顺序表 void InitList(SqList L){for (int i 0; i MaxSize; i) {// 将所有数据元素设置为默认初始值L.data[i] 0;// 设置顺序表初试长度为0L.length 0;} }int main() {// 声明顺序表SqList L;// 初始化顺序表InitList(L);return 0; }注意 使用静态分配时如果数组存满了就“放弃治疗”因为顺序表的表长刚开始确定后就无法更改存储空间是静态的。如果刚开始就声明一个很大的内存空间是没有必要的这样会浪费存储资源。 动态分配 使用动态分配时存储数组的空间是在程序执行过程中通过动态存储分配语句分配的一旦数组空间占满就另外开辟一块更大的存储空间替换原来的存储空间而不需要为线性表一次性地划分所有空间。 动态分配使用“动态数组”实现先定义一个初始长度然后定义顺序表在顺序表中用指针来动态分配数组定义顺序表的最大容量和当前长度。 #include stdio.h // 初始长度 #define InitSize 10 typedef struct {// 动态分配数组的指针ElemType *data;// 顺序表的最大容量int MaxSize;// 顺序表的当前长度int length; }SeqList;动态申请内存空间动态释放内存空间mallocfree 初始动态分配内存语句 L.data (ElemType *)malloc(sizeof(ElemType) * InitSize) L.data指向一整片连续的存储空间的起始地址。(ElemType *)malloc 函数返回一个指针 需要强制转型为你定义的数据元素类型指针。malloc动态申请内存空间。InitSizemalloc 函数的参数指明要分配多大的连续内存空间。 注意使用malloc和free函数需要引入头文件 #include stdlib.h #include stdio.h #include stdlib.h // 初始长度 #define InitSize 10 typedef struct {// 动态分配数组的指针int *data;// 顺序表的最大容量int MaxSize;// 顺序表的当前长度int length; }SqList; // 初始化顺序表 void InitList(SqList L) {//申请一片连续的存储空间L.data (int *)malloc(sizeof(int) * InitSize);// 设置顺序表初试长度为0L.length 0;L.MaxSize InitSize; } //动态插入数据增加长度 void IncreaseSize(SqList L, int len) {int* p L.data;L.data (int*)malloc((L.MaxSize len) * sizeof(int));for (int i 0; i L.length;i) {// 将数据复制到新区域但是这样使用时间开销大L.data[i] p[i];}// 顺序表的最大长度增加lenL.MaxSize L.MaxSize len;// 释放原来的内存空间free(p); } int main() {// 声明顺序表SqList L;// 初始化顺序表InitList(L);//插入数据IncreaseSize(L, 6);return 0; }顺序表的特点 顺序表的特点有随机访问存储密度高拓展容量不方便插入和删除数据元素不方便。 总结 以上就是今天的学习内容啦~ 如果有兴趣的话可以订阅专栏持续更新呢~ 咱们下期再见~
http://www.yingshimen.cn/news/30244/

相关文章:

  • 黄冈网站建设有哪些自助建站系统源码 资源网
  • .net flash网站模板泰安人事考试网
  • 厦门建站网址费用找大学生做家教去哪个网站找好
  • 推荐做幻灯片搜图网站西安淘宝网站建设公司
  • php成品网站超市网页设计基础入门
  • 餐饮网站设计公司网络教育网站建设方案
  • 装潢设计网站做房地产咨询网站怎么赢利
  • joomla 做外贸网站 好的中国100强排名企业名单
  • 成品网站源码查询邮箱注册过的网站
  • 一起做网站可以一件代发吗网站建设答辩问题
  • APP和网站是一样吗广东省广州市白云区白云湖街道
  • 主机网站建设h5设计制作
  • 网站文章怎么做内链免费网站建设合同范本
  • 网站建设课程报告论文境外 网站网站
  • 建设公司网站入账百度竞价怎么做开户需要多少钱
  • asp网站转php网站建设公司 专题制作
  • 微商城手机网站制作wordpress页眉透明
  • 大学生兼职网站开发河南核酸检测vip
  • 小程序链接网站自己做百度链接提交工具
  • 网站构建代码模板腾讯云服务器怎么搭建网站
  • 制作一个网站数据库怎么做的河南建筑工程信息网官网
  • 做公司网站都需要什么资料wordpress评论调用标签
  • 中国建设银行互联网网站wordpress设计素材主题
  • 云虚拟机可以做几个网站网站首页关键词如何优化
  • 论坛网站搭建珠海网站建设创意
  • 沈阳网站青岛seo公司
  • 这么做3d展示网站典型的网络营销案例
  • 建设 静态网站腾讯军事
  • 长沙网站设计公司小学网站模板
  • 运营个网站需要什么条件客户渠道