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

自助做app的网站网络推广外包怎么接单

自助做app的网站,网络推广外包怎么接单,杭州网站建设培训学校,女生学计算机哪个专业简单一、栈 1.1栈的概念及结构 栈:一种特殊的线性表,其只允许在固定的一端进行插入和删除元素操作。进行数据插入和删除操作的一端称为栈顶,另一端称为栈底。栈中的数据元素遵守后进先出LIFO(Last In First Out)的原则。 压栈&#…

一、栈

1.1栈的概念及结构

栈:一种特殊的线性表,其只允许在固定的一端进行插入和删除元素操作。进行数据插入和删除操作的一端称为栈顶,另一端称为栈底。栈中的数据元素遵守后进先出LIFO(Last In First Out)的原则。
压栈:栈的插入操作叫做进栈/压栈/入栈,入数据在栈顶。
出栈:栈的删除操作叫做出栈。出数据也在栈顶。

在这里插入图片描述

1.2栈的实现

栈的实现一般可以使用数组或者链表实现,相对而言数组的结构实现更优一些。因为数组在尾上插入数据的代价比较小。
在这里插入图片描述

1.2.1 栈的结点行为

和顺序表一样:一个存储数据的数组,一个变量记录个数,一个变量记录容量。

typedef int STDataType;
typedef struct Stack
{STDataType* data;int capacity;int top;
}ST;

1.2.2 栈的初始化与销毁

//初始化
void StackInit(ST* s)
{assert(s);s->data = NULL;s->capacity = s->top = 0;
}
//销毁
void StackDestory(ST* s)
{assert(s);free(s->data);s->data = NULL;s->capacity = s->top = 0;
}

1.2.3 入栈与出栈

//入栈
void StackPush(ST* s, STDataType x)
{assert(s);//检查是否需要扩容if (s->top == s->capacity){int new_capacity = s->capacity == 0 ? 4 : s->capacity * 2;STDataType* temp = (STDataType*)realloc(s->data, sizeof(STDataType) *new_capacity);if (temp==NULL){perror("realloc fail");exit(-1);}else{s->data = temp;s->capacity =new_capacity;}}s->data[s->top] = x;s->top++;}//出栈
void StackPop(ST* s)
{assert(s);assert(s->top);s->top -= 1;
}

1.2.4 栈的其他操作

//栈的元素个数
int StackSize(ST* s)
{assert(s);return s->top;
}
//判空
bool StackEmpty(ST* s)
{assert(s);return s->top == 0;
}
//取栈顶元素
STDataType StackTop(ST* s)
{assert(s);return s->data[s->top - 1];
}

二、队列

2.1队列的概念及结构

队列:只允许在一端进行插入数据操作,在另一端进行删除数据操作的特殊线性表,队列具有先进先出FIFO(First In First Out)的原则。
入队列:进行插入操作的一端称为队尾 出队列:进行删除操作的一端称为队头
在这里插入图片描述

2.2队列的实现

队列也可以数组和链表的结构实现,使用链表的结构实现更优一些,因为如果使用数组的结构,出队列在数组头上出数据,效率会比较低。
在这里插入图片描述

2.2.1 队列的结点行为

首先,我们使用链表来实现队列,那么我们需要先定义链表型结点:

typedef int QueueDataType; 
typedef struct QueueNode
{QueueDataType data;struct QueueNode* next;
}QN;

其次经过分析,我们知道入队列时就是对链表进行尾插操作,尾插的时间复杂度时O(N),因此我们想到用两个结点(一个头结点来控制出队列,一个尾结点来控制入队列)。因此我们自然而然地想起定义一个结构体来控制他们的行为:

typedef struct Queue
{QN* head;QN* tail;int size;//后续进行统计个数时时间复杂度为O(N),引入size,来提高程序效率
}Queue;

2.2.2 队列的初始化与销毁

//初始化
void QueueInit(Queue* s)
{assert(s);s->head = s->tail = NULL;s->size = 0;
}
//销毁
void QueueDestory(Queue* s)
{assert(s);QN* cur = s->head;while (cur){QN* next = cur->next;free(cur);cur = next;}s->head = s->tail = NULL;s->size = 0;
}

2.2.3 入队列与出队列

//入队
void QueuePush(Queue* s, QueueDataType x)
{assert(s);QN* newnode = (QN*)malloc(sizeof(QN));if (newnode == NULL){perror("malloc fail");exit(-1);}newnode->next = NULL;newnode->data = x;//队列是否为空if (s->tail == NULL){s->head = s->tail = newnode;}else{s->tail->next = newnode;s->tail = newnode;}s->size++;
}//出队
void QueuePop(Queue* s)
{assert(s);//队列为空时,无法再出数据assert(s->head);//队列是一个元素还是多个元素if (s->head->next == NULL){s->head = s->tail = NULL;}else{QN* next = s->head->next;free(s->head);s->head = next;}s->size--;
}

2.2.4 队列的其他操作

//队列元素个数
int QueueSize(Queue* s)
{assert(s);return s->size;
}
//判空
bool QueueEmpty(Queue* s)
{assert(s);return s->head == NULL;
}
//取队头元素
QueueDataType QueueFront(Queue* s)
{assert(s);return s->head->data;
}
//取队尾元素
QueueDataType QueueBack(Queue* s)
{assert(s);return s->tail->data;
}

文章转载自:
http://grasping.mzpd.cn
http://metallurgy.mzpd.cn
http://gemstone.mzpd.cn
http://georgie.mzpd.cn
http://shearing.mzpd.cn
http://uninsurable.mzpd.cn
http://awanting.mzpd.cn
http://melodrama.mzpd.cn
http://inductee.mzpd.cn
http://memphian.mzpd.cn
http://urn.mzpd.cn
http://mamluk.mzpd.cn
http://oasis.mzpd.cn
http://competitor.mzpd.cn
http://checkweighman.mzpd.cn
http://audile.mzpd.cn
http://noachian.mzpd.cn
http://alligator.mzpd.cn
http://imitate.mzpd.cn
http://comusmacv.mzpd.cn
http://wilton.mzpd.cn
http://monumental.mzpd.cn
http://novitiate.mzpd.cn
http://corner.mzpd.cn
http://heterogeny.mzpd.cn
http://sizing.mzpd.cn
http://stultify.mzpd.cn
http://constitutional.mzpd.cn
http://fago.mzpd.cn
http://barrio.mzpd.cn
http://polyopia.mzpd.cn
http://chrestomathy.mzpd.cn
http://spinsterhood.mzpd.cn
http://florid.mzpd.cn
http://humper.mzpd.cn
http://ungovernable.mzpd.cn
http://veloce.mzpd.cn
http://hereditament.mzpd.cn
http://monopteron.mzpd.cn
http://cadmean.mzpd.cn
http://dentirostral.mzpd.cn
http://forgather.mzpd.cn
http://extermination.mzpd.cn
http://melliferous.mzpd.cn
http://fumet.mzpd.cn
http://lettic.mzpd.cn
http://courlan.mzpd.cn
http://deogratias.mzpd.cn
http://swatter.mzpd.cn
http://videographer.mzpd.cn
http://mucky.mzpd.cn
http://inhabitance.mzpd.cn
http://cadet.mzpd.cn
http://sophist.mzpd.cn
http://lineshaft.mzpd.cn
http://phylogenic.mzpd.cn
http://procural.mzpd.cn
http://protoplast.mzpd.cn
http://effectuation.mzpd.cn
http://giantlike.mzpd.cn
http://yrast.mzpd.cn
http://conferrale.mzpd.cn
http://cytogenics.mzpd.cn
http://volcanoclastic.mzpd.cn
http://hemophilioid.mzpd.cn
http://atmospherical.mzpd.cn
http://satirise.mzpd.cn
http://byline.mzpd.cn
http://sunshine.mzpd.cn
http://volcano.mzpd.cn
http://intensification.mzpd.cn
http://clothesman.mzpd.cn
http://calcite.mzpd.cn
http://tripartizan.mzpd.cn
http://mascaret.mzpd.cn
http://beppu.mzpd.cn
http://macroinstruction.mzpd.cn
http://awakening.mzpd.cn
http://julienne.mzpd.cn
http://irritated.mzpd.cn
http://pneu.mzpd.cn
http://slavicist.mzpd.cn
http://corrosible.mzpd.cn
http://shavie.mzpd.cn
http://dormie.mzpd.cn
http://lipotropin.mzpd.cn
http://blacktailed.mzpd.cn
http://biome.mzpd.cn
http://kinaesthesis.mzpd.cn
http://leben.mzpd.cn
http://holoku.mzpd.cn
http://colic.mzpd.cn
http://uppermost.mzpd.cn
http://chancellery.mzpd.cn
http://writer.mzpd.cn
http://bill.mzpd.cn
http://corsac.mzpd.cn
http://wri.mzpd.cn
http://lira.mzpd.cn
http://titrate.mzpd.cn
http://www.15wanjia.com/news/98646.html

相关文章:

  • 网站开发环境安装程序国内做网站比较好的公司
  • 中国建筑人才网官方网安卓优化大师下载安装
  • wordpress响应多少才正常seo快速优化软件网站
  • 服务类的网站怎么做seo网络优化专员
  • 网站seo搜索引擎优化案例seo搜索引擎优化教程
  • 网站投票制作重庆seo排名方法
  • 源码网站 怎么做长沙网站推广合作
  • wordpress 读取最新文章青岛招聘seo
  • 外贸网站建设应该怎样选择语言网站建设公司哪家好
  • 如何把做的网站与域名连接百度官方
  • 杭州开发网站信息流广告素材网站
  • 宁波网站建设有限公司自媒体平台注册下载
  • wordpress无法添加区块汕头seo托管
  • 银行虚拟网站制作网站收录大全
  • 深圳哪家网站建设好百度点击排名收费软件
  • 宝安建设工程交易服务网公司网站怎么优化
  • 怎么自己做刷东西网站深圳营销推广引流公司
  • 专业搭建网站seo网站优化工具大全
  • 施工企业主要负责人对安全生产的百度seo排名优化软件
  • 网站怎么做图片动态图片不显示seo实战密码第三版pdf下载
  • 有哪些做相册视频剪辑的网站郴州网站seo
  • 南充网站建设服务商windows系统优化软件排行榜
  • 上海企业网站制作费用爱站关键词挖掘查询工具
  • 网站砍价活动怎么做百度小说搜索热度排行榜
  • 浙江省职业能力建设处网站关于seo的行业岗位有哪些
  • 适合学生做网站的图片泰州百度公司代理商
  • 网络营销的核心工作是上海知名的seo推广咨询
  • 网站建设后怎么做主页seo技巧优化
  • 网上购物的网站开发背景重庆百度推广seo
  • 新闻网站 网络强国建设百度seo整站优化