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

营销网站制作公司做网站一般都用什么字体

营销网站制作公司,做网站一般都用什么字体,装修网页设计,ui和前端哪个前景好目录 1.什么是顺序表 2.动态顺序表实现 2.1动态顺序表结构体 2.2初始化 2.3打印验证函数 2.4判断是否扩容#xff0c;按需扩容 2.5头插/尾插 2.6头删/尾删 2.7指定位置插入数据/指定位置删除数据 3.动态顺序表代码 1.什么是顺序表 线性表是n个具有相同特性的数据元素的…目录 1.什么是顺序表 2.动态顺序表实现 2.1动态顺序表结构体 2.2初始化 2.3打印验证函数 2.4判断是否扩容按需扩容 2.5头插/尾插 2.6头删/尾删 2.7指定位置插入数据/指定位置删除数据 3.动态顺序表代码 1.什么是顺序表 线性表是n个具有相同特性的数据元素的有限序列。线性表是⼀种在实际中广泛使用的数据结构常见的线性表顺序表、链表、栈、队列、字符串等在逻辑结构上呈线性在物理结构存储上不一定线性。顺序表是线性表的一种在逻辑结构上呈线性在物理结构存储也是线性的因为底层结构是数组加上增删查改等功能封装在一起形成顺序表顺序表分成静态顺序表和动态顺序表。 2.动态顺序表实现 2.1动态顺序表结构体 SLDataType是类型重命名便于替换类型 size是有效数据个数也是一种重要下标即为最后一个有效数据的下一个下标 capacity是arr空间容量 2.2初始化/销毁 要初始化后才能后续使用该结构体用完后进行销毁 2.3打印验证函数 便于后续验证直接使用 2.4判断是否扩容按需扩容 当空间容量不够时即空间容量与有效数据值相等就需要扩容起始空间容量扩容4后面的扩容按原空间容量的2倍或者1.5倍的原则扩容 使用中间指针判断是否扩容成功失败退出程序成功就将原指针更新为中间指针并更新扩容后的空间容量 2.5头插/尾插 头插分为三种情况 注意后移形式避免覆盖到后续后移数据 尾插分三种情况 2.6头删/尾删 头删分两种情况 尾删 2.7指定位置插入数据/指定位置删除数据 pos是插入下标: 2.8查找数据 2.9改变指定下标的数据 3.动态顺序表代码 具体代码如下 //头文件 SeqList.h#pragma once#include stdio.h #include stdlib.h #include assert.h typedef int SLDataType;//便于类型替换//动态顺序表 typedef struct SeqList {SLDataType* arr;//存储数据的底层结构int size; //有效数据个数int capacity; //空间容量 }SL;静态顺序表 //#define N 10 //typedef struct SeqList //{ // SLDataType arr[N];//定长数组 // int size; //有效数据个数 //}SL;//初始化和销毁 void SLInit(SL* ps); void SLDestory(SL* ps); //打印验证 void SLPrint(SL* ps);//顺序表头插 void SLPushFront(SL* ps, SLDataType x); //顺序表尾插 void SLPushBack(SL* ps, SLDataType x);//判断是否需要扩容需要进行扩容 void SLCheckCapacity(SL* ps);//顺序表的头删 void SLPopFront(SL* ps); //顺序表的尾删 void SLPopBack(SL* ps);//指定位置插入数据后面数据存在就后移 void SLInsert(SL* ps, int pos, SLDataType x); //删除指定位置数据,后面数据存在就前移 void SLErase(SL* ps, int pos);//改变指定下标的数据 void SLChange(SL* ps, int pos, SLDataType x);//查找 int SLFind(SL* ps, SLDataType x); //SeqList.c#define _CRT_SECURE_NO_WARNINGS 1#include SeqList.h//初始化和销毁 void SLInit(SL* ps) {ps-arr NULL; //初始化为空指针 ps-size ps-capacity 0; //初始化什么都没有所以为0 } void SLDestory(SL* ps) {assert(ps);free(ps-arr);ps-arr NULL;ps-size ps-capacity 0; } //打印验证 void SLPrint(SL* ps) {for (int i 0; i ps-size; i){printf(%d , ps-arr[i]);}printf(\n); }//判断是否需要扩容需要进行扩容 void SLCheckCapacity(SL* ps) {if (ps-size ps-capacity)//有效数据个数与空间容量相等的时候要插入需要先扩容{int newCapacity ps-capacity 0 ? 4 : 2 * ps-capacity;//起始空间容量为0则第一次扩容4个扩容原则扩容原空间容量的2倍或1.5倍SLDataType* tmp (SLDataType*)realloc(ps-arr, newCapacity * sizeof(SLDataType));//中间指针接收扩容后的地址if (tmp NULL)//扩容失败{perror(Realloc Fail!);exit(1);//意外退出}ps-arr tmp;//扩容成功ps-capacity newCapacity;//更新扩容后的空间容量} }//顺序表头插 void SLPushFront(SL* ps, SLDataType x) {assert(ps);//或者if(ps NULL) { return; }//若空间不够需要扩容SLCheckCapacity(ps);for (int i ps-size; i 0; i--){ps-arr[i] ps-arr[i - 1];}ps-arr[0] x;ps-size; } //顺序表尾插 void SLPushBack(SL* ps, SLDataType x) {assert(ps);//若空间不够需要扩容SLCheckCapacity(ps);ps-arr[ps-size] x;ps-size; }//顺序表的头删 void SLPopFront(SL* ps) {assert(ps);assert(ps-size);//顺序表为空不能再删了for (int i 0; i ps-size - 1; i)//向前覆盖{ps-arr[i] ps-arr[i 1];}ps-size--;//有效数据减1 } //顺序表的尾删 void SLPopBack(SL* ps) {assert(ps);assert(ps-size);//顺序表为空不能再删了ps-size--;//直接减去最后一位的有效数据 }//指定位置插入数据后面数据存在就后移 void SLInsert(SL* ps, int pos, SLDataType x) {assert(ps);assert(pos 0 pos ps-size);SLCheckCapacity(ps);for (int i ps-size; i pos; i--){ps-arr[i] ps-arr[i - 1];}ps-arr[pos] x;ps-size; } //删除指定位置数据,后面数据存在就前移 void SLErase(SL* ps, int pos) {assert(ps);assert(pos 0 pos ps-size);for (int i pos; i ps-size - 1; i){ps-arr[i] ps-arr[i 1];}ps-size--; }//改变指定下标的数据 void SLChange(SL* ps, int pos, SLDataType x) {assert(ps);assert(pos 0 pos ps-size);ps-arr[pos] x; }//查找 int SLFind(SL* ps, SLDataType x) {for (int i 0; i ps-size; i){if (ps-arr[i] x){return i;}}return -1; } //测试project.c#define _CRT_SECURE_NO_WARNINGS 1#include SeqList.hvoid test() {SL ps;SLInit(ps);SLPushFront(ps, 5);SLPushFront(ps, 4);SLPushFront(ps, 3);SLPushFront(ps, 2);SLPushFront(ps, 1);SLPrint(ps);SLPushBack(ps, 6);SLPushBack(ps, 7);SLPushBack(ps, 8);SLPushBack(ps, 9);SLPushBack(ps, 10);SLPrint(ps);SLPopFront(ps);SLPopFront(ps);SLPrint(ps);SLPopBack(ps);SLPopBack(ps);SLPrint(ps);SLInsert(ps, 0, 1);SLInsert(ps, 1, 2);SLInsert(ps, 8, 9);SLInsert(ps, 9, 10);SLPrint(ps);SLErase(ps, 4);SLErase(ps, 7);SLPrint(ps);SLInsert(ps, 4, 5);SLInsert(ps, 7, 9);SLChange(ps, 0, 10);SLChange(ps, 1, 11);SLPrint(ps);int ret SLFind(ps, 3);if (ret ! -1){printf(找到了在下标为%d的位置\n, ret);}else{printf(不存在数据查找失败\n);}SLDestory(ps); }int main() {test();return 0; }
http://www.w-s-a.com/news/349199/

相关文章:

  • dede模板网站教程jsp网站搭建
  • 上海网站开发外包公司鲜花导购网页制作
  • 宿州外贸网站建设公司个人注册网站一般做什么
  • 小公司做网站用哪种服务器什么是网站代理
  • 青岛李村网站设计公司cms建站平台
  • 做saas网站可行吗许昌抖音推广公司
  • 网站建设找谁做seo基础知识培训
  • 微网站怎么做的好建设网站不会写代码
  • 广州外贸网站制作wordpress信息搜索插件
  • 福建高端网站建设个人公众号怎么制作教程
  • 企业网站有哪些举几个例子wordpress ie兼容插件
  • 高端的深圳网站页面设计福清市建设局官方网站
  • 安装网站到服务器合肥建设干部学校网站
  • 影视网站如何做销售案例网站
  • 建设网站对比方案龙岗网站开发公司
  • 网站开发标准网站建设公司兴田德润可信赖
  • 如何建设一个公众号电影网站自动seo优化
  • 个人网站能备案吗酱香拿铁采取了哪些网络营销方式
  • 网站建设及推广好做吗自己做的网站加入购物车价格
  • 涡阳在北京做网站的名人注册一个免费的网站
  • 三门峡建设环境局网站公司注册网上核名通道
  • 叶县建设局网站要看网海外域名是多少
  • 网站运行环境配置Wordpress支付时效
  • logo设计网站知乎港北网站建设
  • 北京市保障性住房建设投资中心官方网站有限责任公司的特点
  • 做网站卖互联网营销怎么做
  • 晋州市建设局网站建站网站系统
  • 专业网站优化方案广东微信网站制作报价表
  • 北京网站建设公司分形科技简述营销网站建设策略
  • 汉中网站建设有限公司vue网站开发