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

小程序制作收款网站结构优化的优化包括

小程序制作收款,网站结构优化的优化包括,会员管理系统下载,网站开发工程师月薪平均文章目录 前言1.准备工作2.代码的实现2.1.顺序表的创建、销毁和打印2.2.顺序表的扩容、头插\删、尾插\删2.2.1.扩容2.2.2.尾插2.2.3.头插2.2.3.尾删2.2.4.头删 2.3.指定位置之前插入/删除数据/查找数据2.3.1.指定位置之前插入数据2.3.2.指定位置之前删除数据2.3.3.查找特定数据… 文章目录 前言1.准备工作2.代码的实现2.1.顺序表的创建、销毁和打印2.2.顺序表的扩容、头插\删、尾插\删2.2.1.扩容2.2.2.尾插2.2.3.头插2.2.3.尾删2.2.4.头删 2.3.指定位置之前插入/删除数据/查找数据2.3.1.指定位置之前插入数据2.3.2.指定位置之前删除数据2.3.3.查找特定数据 总结 前言 上一篇我们认识到了顺序表以及实现顺序表操作的相关函数下面我们来一一实现。 1.准备工作 示例 打开vs2022创建三个文件 其中SeqList.h头文件是用来记录的相当于一本书的目录 SeqList.c文件是用来实现函数的相当于各种公式 test.c是用来测试的。 记住一个好的习惯是写完一个函数要测试一个函数。 2.代码的实现 2.1.顺序表的创建、销毁和打印 //初始化 void SLInit(SL* ps) {ps-arr NULL;ps-size ps-capacity 0; }//销毁 void SLDestroy(SL* ps) {if (ps-arr){free(ps-arr);}ps-capacity ps-size 0; } //打印 void SLPrint(SL* ps) {for (int i 0; i ps-size; i){printf(%d , ps-arr[i]);}printf(\n); }这个代码较为简单。 思考为什么向函数中传递形参时是用指针如果不是指针会发生什么大家可以试试。 2.2.顺序表的扩容、头插\删、尾插\删 2.2.1.扩容 //扩容 void SLCheckCapacity(SL* ps) {if (ps-capacity ps-size){int newCapacity ps-capacity 0 ? 4 : 2 * ps-capacity;SeqDataType* tmp (SeqDataType*)realloc(ps-arr,sizeof(SeqDataType) * newCapacity);if (tmp NULL){perror(realloc fail!);exit(1);}ps-capacity newCapacity;ps-arr tmp;} }2.2.2.尾插 void SLPushBack(SL* ps, SeqDataType x) {assert(ps);//要判断arr空间是否充足SLCheckCapacity(ps);ps-arr[ps-size] x;}2.2.3.头插 void SLPushFront(SL* ps, SeqDataType x) {assert(ps);SLCheckCapacity(ps);//要将原来数组的每一个数移动到前面for (int i ps-size; i0; i--){ps-arr[i] ps-arr[i - 1];//arr[1]arr[0]}ps-arr[0] x;ps-size; }2.2.3.尾删 尾删可能是最简单的但是可能第一次想象不到只需要size–即可在输出的结果上一看便是少了一个并且也是最后一个。 void SLPopBack(SL* ps) {assert(ps);assert(ps-arr);//删着删着最后要是顺序表为空要报警ps-size--; }2.2.4.头删 void SLPopFront(SL* ps) {assert(ps ps-arr);//删除第一个数字后将后面的数字移动到前面for (int i0; ips-size-1; i){ps-arr[i] ps-arr[i1];//arr[size-2]arr[size-1]}ps-size--; }2.3.指定位置之前插入/删除数据/查找数据 2.3.1.指定位置之前插入数据 void SLInsert(SL* ps, int pos, SeqDataType x) {assert(ps ps-arr);assert(pos 0 pos ps-size);SLCheckCapacity(ps);for (int i ps-size; ipos; i--){ps-arr[i] ps-arr[i-1];}ps-arr[pos] x;ps-size; }assert(pos 0 pos ps-size);为什么不是呢是因为咱们得目的是让数据插入到指定位置之前如果传入的位置是ps-size的话最后的代码将会是在ps-size之后插入的不符合需要的功能所以是 2.3.2.指定位置之前删除数据 void SLErase(SL* ps, int pos) {assert(ps-arr ps);assert(pos 0 pos ps-size);for (int i 0; i pos; i){ps-arr[i] ps-arr[i 1];}ps-size--; }2.3.3.查找特定数据 int SLFind(SL* ps, SeqDataType x) {for (int i 0; i ps-size; i)if (ps-arr[i] x)return i;return -1; }总结 上面便是顺序表的常见的操作大家可以根据代码自己理解并掌握。
http://www.zqtcl.cn/news/957785/

相关文章:

  • 北京市建设工程质监站网站poi player wordpress
  • php网站开发工程师招聘网自己做小程序要钱吗
  • 两学一做考试网站空间网
  • 齐诺网站建设东莞网站建设做网站集团网站群
  • 网站运营策略如何做软件网站开发培训
  • 数据库型网站wordpress上传工具
  • 太原建站公司模板宁波seo公司哪家好
  • 电商网站都是用什么做的承接电商网站建设
  • c2c网站代表有哪些怎样制作个人网站
  • wordpress linux 建站安丘市建设局官方网站
  • 谁给个好网站硬件开发是什么
  • 海外网站加速器免费长春做网站优化哪家好
  • 建立网站需要多长钱电脑网页设计培训
  • 给网站划分栏目邢台做网站优化费用
  • 网群企业网站管理系统红塔区住房和城乡建设局网站
  • 濮阳网站建设在哪做沈阳百度网站的优点
  • 网站上如何做问卷调查温州建设局官方网站
  • 做一件代发哪个网站好具有品牌的福州网站建设
  • 邢台移动端网站建设犀牛建模教程
  • 华池网站建设广西柳州市
  • 泰安网站建设推荐软件商店电脑版官方下载
  • 站长平台网站报价单模板表格
  • 织梦做的网站老是被黑杭州网站设计询问蓝韵网络
  • wordpress手机版如何设置福鼎整站优化
  • 网站建设小程序定制开发北京东宏建设网站
  • 网站制作还花钱网站图怎么做
  • 免费搭网站wordpress minty
  • 海沧建设网站多少国外调色网站
  • 中企动力建站怎么样网站建设与设计的心得体会
  • 打开网站出现directoryj2ee做网站