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

网站建设销售年终总结小红书关键词热度查询

网站建设销售年终总结,小红书关键词热度查询,wordpress增加会员中心,2021东莞封城最新消息前言#xff1a;还记得前面的文章#xff1a;《通讯录的实现》吗#xff1f;通讯录的完成就借助了顺序表这种数据结构#xff01;#xff01;#xff01;那么今天我们就来介绍我们的顺序表介绍顺序表前#xff0c;我们来了解一下线性表的概念线性表#xff1a;线性表还记得前面的文章《通讯录的实现》吗通讯录的完成就借助了顺序表这种数据结构那么今天我们就来介绍我们的顺序表介绍顺序表前我们来了解一下线性表的概念线性表线性表linear list是n个具有相同特性的数据元素的有限序列。 线性表是一种在实际中广泛使用的数据结构常见的线性表顺序表、链表、栈、队列、字符串…线性表在逻辑上是线性结构也就说是连续的一条直线。但是在物理结构上并不一定是连续的线性表在物理上存储时通常以数组和链式结构的形式存储。顺序表什么是顺序表顺序表是用一段物理地址连续的存储单元依次存储数据元素的线性结构一般情况下采用数组存储。在数组上完成数据的增删查改。顺序表可动态增长的数组要求数据是连续存储的顺序表的分类一、静态顺序表typedef int SLDataType;typedef struct SeqList {SLDataType array[N]; //定长数组size_t size; //有效数据个数 }SeqList;由上述代码我们可以很清楚的看出这个顺序表使用定长数组进行存储数据。我们也很容易发现这个静态的顺序表有一个十分大的缺陷数组的大小不确定如果你的N给小了那么就会不够用如果你的N给大了又会造成浪费所以我们如果使用顺序表就应该使用动态的顺序表二、动态顺序表typedef int SLDataType; //类型重命名后续要存储其它类型时方便更改typedef struct SeqList {SLDataType* SLD; //指向动态开辟的数组size_t size; //有效数据个数size_t capacity; //容量大小 }SeqList; 动态顺序表的实现初始化顺序表void SeqListInit(SeqList* psl) {assert(psl);psl-SLD NULL; psl-size 0; psl-capacity 0; }销毁顺序表void SeqListDestory(SeqList* psl) {assert(psl ! NULL); free(psl-SLD); psl-SLD NULL; psl-size 0; psl-capacity 0; }检查顺序表容量是否满了好进行增容void CheckCapacity(SeqList* psl) {assert(psl ! NULL); if (psl-size psl-capacity) {size_t newcapacity; if (psl-capacity 0)newcapacity psl-capacity 4; elsenewcapacity 2 * psl-capacity; SLDataType* p (SLDataType*)realloc(psl-SLD, newcapacity * sizeof(SLDataType)); if (p NULL){perror(realloc);exit(-1);}psl-SLD p; psl-capacity newcapacity; } }顺序表尾插void SeqListPushBack(SeqList* psl, SLDataType x) {assert(psl ! NULL); CheckCapacity(psl); psl-SLD[psl-size] x; psl-size; }顺序表尾删void SeqListPopBack(SeqList* psl) {assert(psl ! NULL); assert(psl-size 0); psl-size--; }顺序表头插void SeqListPushFront(SeqList* psl, SLDataType x) {assert(psl); CheckCapacity(psl); int i 0;for (i psl-size - 1; i 0; i--) {psl-SLD[i 1] psl-SLD[i];}psl-SLD[0] x; psl-size; }顺序表头删void SeqListPopFront(SeqList* psl) {assert(psl); assert(psl-size 0); int i 0;for (i 1; i psl-size; i) {psl-SLD[i - 1] psl-SLD[i];}psl-size--; }打印顺序表void SeqListPrint(const SeqList* psl) {assert(psl ! NULL); if (psl-size 0) {printf(顺序表为空\n);return;}int i 0;for (i 0; i psl-size; i) {printf(%d , psl-SLD[i]);}printf(\n); }在顺序表中查找指定值int SeqListFind(const SeqList* psl, SLDataType x) {assert(psl); int i 0;for (i 0; i psl-size; i){if (psl-SLD[i] x){return i; }}return -1; } 在顺序表指定下标位置插入数据void SeqListInsert(SeqList* psl, size_t pos, SLDataType x) {assert(psl); assert(pos 0 pos psl-size); CheckCapacity(psl); size_t i 0;for (i psl-size; i pos; i--) {psl-SLD[i] psl-SLD[i - 1];}psl-SLD[pos] x; psl-size; }在顺序表中删除指定下标位置的数据void SeqListErase(SeqList* psl, size_t pos) {assert(psl); assert(psl-size 0); assert(pos 0 pos psl-size); size_t i 0;for (i pos 1; i psl-size; i) {psl-SLD[i - 1] psl-SLD[i];}psl-size--; }查看顺序表中数据个数size_t SeqListSize(const SeqList* psl) {assert(psl); return psl-size; }修改指定下标位置的数据void SeqListAt(SeqList* psl, size_t pos, SLDataType x) {assert(psl); assert(psl-size 0); assert(pos 0 pos psl-size); psl-SLD[pos] x; }
http://www.w-s-a.com/news/431223/

相关文章:

  • 温州网站建设seo网站 如何做 中英文切换
  • 聊城做网站的公司资讯信阳 网站建设
  • 天津市工程建设交易网站查汗国珠海 网页设计
  • 龙果学院大型网站稳定性建设汾阳做网站
  • 湖北 个人网站备案时间域名查询备案查询
  • 网站推广方式校园网站怎么建
  • 长沙seo网站排名怎么在百度发帖
  • 织梦贷款网站模板做印章网站
  • 彭州做网站上海百度网络推广
  • 广州网站搭建快速提升网站排名荧光字网站
  • 15年做那些网站能致富做seo是什么意思
  • 各电商网站的特点网站制作2007
  • 用html做一号店网站怎么做公众号注册平台官网
  • 做盈利网站怎么备案vs做网站如何调试
  • 嘉兴做营销型网站廊坊做网站外包
  • 双语网站模板常州做网站的公司
  • 广州市车管所网站建设全国做网站公司前十名
  • 太原手手工网站建设公司视频直播服务
  • 雷达图 做图网站wordpress首页怎么美化
  • 四川做网站设计公司价格vip解析网站怎么做的
  • 网站建设流程域名申请做化工的 有那些网站
  • 软件开发设计流程图seo搜索引擎官网
  • 外国小孩和大人做网站东富龙科技股份有限公司
  • 上线倒计时单页网站模板做网站的资金来源
  • 泸州市建设厅网站中小企业网络需求分析
  • asp网站版权做网页价格
  • 长春网站建设路关键词优化公司哪家好
  • 河南省建设银行网站年报天津设计师网站
  • 沙洋网站定制如果自己建立网站
  • 凡科网站怎么做建站关键字搜索网站怎么做