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

网站建设投标人资质要求发布app需要什么条件

网站建设投标人资质要求,发布app需要什么条件,手机号申请邮箱,哪家公司建网站好目录 线性表 顺序表 动态顺序表类型 初始化 销毁 打印 检查空间是否充足#xff08;扩容#xff09; 尾部插入 头部插入 尾部删除 头部删除 指定位置插入 指定位置删除 查找数据 线性表 线性表是n个相同特性的数据元素组成的有限序列#xff0c;其是一种广泛运…目录 线性表 顺序表 动态顺序表类型 初始化 销毁 打印 检查空间是否充足扩容 尾部插入 头部插入 尾部删除 头部删除 指定位置插入 指定位置删除 查找数据 线性表 线性表是n个相同特性的数据元素组成的有限序列其是一种广泛运用的数据结构常见的线性表有顺序表、栈、链表、队列等。 其在逻辑上是线性的物理结构存储结构上不一定是线性的。 顺序表 顺序表就是线性表的一种它在逻辑结构与物理结构上都是连续的一般情况下它的底层就是数组在数组基础上多了增删查改操作。 顺序表有静态顺序表和动态顺序表我们常常采用动态顺序表因为它的扩容方便、空间浪费更少。 动态顺序表类型 typedef int SeqDataType;//将动态顺表的存储数据的类型重命名方便后期统一修改//动态顺序表 typedef struct SeqList {//命名Sequence List顺序表SeqDataType* arr;int capacity;//动态顺序表的容量int size;//动态顺序表的有效个数 }SL; 初始化 //初始化 void SLInit(SL* s) {s-arr NULL;s-capacity s-size 0; } 销毁 //销毁 void SLDestory(SL* s) {if (!s-arr) {//等同于s-arrNULL判断要释放的空间是否是NULL防止释放NULLperror(Destory Fail);//打印错误exit(1);}free(s-arr);//释放动态开辟的内存s-arr NULL;s-capacity s-size 0; } 打印 打印操作方便我们检查错误。 //打印 void SLPrint(SL* s) {assert(s);for (int i 0; i s-size; i) {printf(%d , s-arr[i]);}printf(\n); }检查空间是否充足扩容 插入操作会扩大空间大小那么在进行插入操作前我们应该检查空间是否充足扩容 //检查空间是否充足扩容 void SLCheckCapacity(SL* s) {if (s-capacity s-size) {//判断有效元素个数是否和空间大小相同相同空间用满了要扩容int newcapacity s-capacity 0 ? 4 : s-capacity * 2;//空间是否为0,是赋个初值4防止按倍数扩容出错//不是按两倍扩容赋给临时变量防止扩容失败对原capacity改变SeqDataType* p (SeqDataType*)realloc(s-arr, sizeof(SeqDataType) *newcapacity);//这里是为s-arr扩容不是为结构体动态顺序表if (!p) {perror(realloc fail);exit(1);}s-arr p;s-capacity newcapacity;} }尾部插入 //尾插 void SLPushBack(SL* s, SeqDataType x) {assert(s);SLCheckCapacity(s);//检查空间是否充足s-arr[s-size] x;//尾部插入数据并使有效元素加1 } 头部插入 //头插 void SLPushFront(SL* s, SeqDataType x) {assert(s);//SLCheckCapacity(s);for (int i s-size ; i 0; i--) {s-arr[i] s-arr[i-1];}//将数据整体后移一位腾出第一位给头插且循环条件初始化i等于s-sizes-arr[0] x;s-size;//别忘了将有效数据个数加一 } 尾部删除 //尾删 void SLPopBack(SL* s) {assert(s-arr);//不能对空数组进行删除assert(s-size);//不能对有效元素0个的数组进行删除s-size--;//直接使有效元素个数减1即可 } 头部删除 //头删 void SLPopFront(SL* s) {assert(s-arr);assert(s-size);for (int i 0; i s-size - 1; i) {s-arr[i] s-arr[i 1];}//注意循环条件s-size-1取到最后一个元素前一个位置s-size--; } 指定位置插入 //指定位置之前插入数据 void SLInsert(SL* s, int pos, SeqDataType x) {assert(s);assert(pos 0 pos s-size);//pos0时头插poss-size时尾插SLCheckCapacity(s);for (int i s-size; i pos; i) {//从pos位置开始腾出位置给要插入的数据s-arr[i] s-arr[i - 1];}s-size;s-arr[pos] x; } 指定位置删除 //指定位置删除 void SLErase(SL* s, int pos) {assert(s-arr);assert(pos 0 pos s-size);//保证pos是可删除的for (int i pos; i s-size - 1; i) {//使pos以后的数据向前移一位s-arr[i] s-arr[i 1];}s-size--; } 查找数据 //查找数据 void SLFind(SL* s, SeqDataType x) {assert(s-arr);assert(s-size 0);for (int i 0; i s-size; i) {//遍历顺序表找到值返回下标找不到返回-1if (s-arr[i] x) {return i;}}return -1; } 最后我们来测试一下我们写的代码
http://www.zqtcl.cn/news/416183/

相关文章:

  • 网页上做ppt的网站好花西子网络营销案例分析
  • 网站设计说明书主要有什么成都企业网站seo
  • 免费素材下载网站网站建设进度时间表
  • 网站做关键词首页什么是网络营销?如何理解它的产生和把握它的特点?
  • centos做网站扬州市邗江区城乡建设局网站
  • 宁波网站建设模板制作企业做网站的作用
  • 南通网站快速收录禁止wordpress自动更新
  • 济南做网站最好的公司做一电影网站怎么赚钱吗
  • 中国城市建设网站宿州网站建设零聚思放心
  • 佛山网站免费制作struts2 做的网站
  • 做网站需要了解什么软件电商网站建设方案道客巴巴
  • 网站开发语言用什么好网站好坏怎么分析
  • 镇江制作网站的dw新建站点
  • 如果将域名指向网站东营网站建设收益高
  • 沈阳seo网站推广优化c2c网站的功能
  • 网站设计深圳云南制作网站的公司
  • 广州的网站建设公司对网络平台的优化有哪些建议
  • 培训网站模板免费网站建设投标书
  • 常德市建设局网站用tornado做网站
  • 网站快速排名优化报价现在最流行的网站开发工具
  • 支付公司网站建设会计分录合肥房产信息网官网
  • 镜像网站能否做google排名宝丰网站制作公司
  • 中国公路建设协会网站网站建设 业务培训
  • 原创文章网站开发教程安徽网站建设获客企业
  • 企业网站后台怎么做南京微网站开发
  • 网站seo在线优化广告策划书的格式
  • 网站解析怎么设置三北防护林体系建设网站
  • 长沙高端网站建设公司wordpress分享缩略图
  • 支付网站建设费管理咨询公司取名
  • dw网站制作的一般流程wordpress 分类列表页