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

Wordpress屏蔽模仿站爬虫ip网站建设公司哪家专业

Wordpress屏蔽模仿站爬虫ip,网站建设公司哪家专业,中医院网站素材,温州个人建站模板目录 1-栈的概念和结构 1.1栈的概念 1.2栈的结构 2-栈的实现 2.1定义关于栈的结构体和各种函数 2.2栈的初始化 STInit 函数 2.3栈的销毁 STDestroy 函数 2.4栈的插入操作 STPush 函数 2.5栈的判断是否为空操作 STEmpty 函数 2.6栈的删除操作 STPop 函数 2.7…目录 1-栈的概念和结构 1.1栈的概念 1.2栈的结构 2-栈的实现 2.1定义关于栈的结构体和各种函数 2.2栈的初始化 STInit 函数 2.3栈的销毁 STDestroy 函数 2.4栈的插入操作 STPush 函数  2.5栈的判断是否为空操作 STEmpty 函数  2.6栈的删除操作 STPop 函数 2.7栈的取栈顶元素操作 STTop 函数 2.8求栈的大小即有效元素的个数 STSize 函数 3-测试下我们自己写的栈 4-您的专属鼓励师 1-栈的概念和结构 1.1栈的概念 栈一种特殊的线性表其只允许在固定的一端进行插入和删除元素操作。进行数据插入和删除操作的一端称为栈顶另一端称为栈底。栈中的数据元素遵守后进先出LIFOLast In First Out的原则。 压栈栈的插入操作叫做进栈/压栈/入栈入数据在栈顶。 出栈栈的删除操作叫做出栈。出数据也在栈顶。 1.2栈的结构 2-栈的实现 栈的实现一般可以使用数组或者链表实现相对而言数组的结构实现更优一些。因为数组在尾上插入数据的代价比较小. 使用数组模拟原理: 使用链表模拟原理: // 下面是定长的静态栈的结构实际中一般不实用所以我们主要实现下面的支持动态增长的栈 typedef int STDataType; #define N 10 typedef struct Stack {STDataType _a[N];int _top; // 栈顶 }Stack; 2.1定义关于栈的结构体和各种函数 #pragma once #includestdlib.h #includeassert.h #includestdbool.htypedef struct Stack {int* _arr;//开辟在堆区上存储数据的数组int _top;//栈顶的下一个位置int _capacity;//栈的容量 }ST;//1.栈初始化 void STInit(ST* pst); //2.栈的销毁 void STDestroy(ST* pst); //3.栈的插入操作 void STPush(ST* pst, int x); //4.栈的删除操作 void STPop(ST* pst); //5.取栈顶元素 int STTop(ST* pst); //6.判断栈是否为空,空为true,非空为false bool STEmpty(ST* pst); //7.求栈的大小即有效元素的个数 int STSize(ST* pst); 2.2栈的初始化 STInit 函数 //1.栈初始化 void STInit(ST* pst) {assert(pst);pst-_arr NULL;pst-_capacity 0;pst-_top 0;//指向栈顶元素的下一个位置,类似于//之前写的顺序表中的_size,指向未使用位置 } 2.3栈的销毁 STDestroy 函数 //2.栈的销毁 void STDestroy(ST* pst) {assert(pst);free(pst-_arr);//清理位于堆上的数组pst-_arr NULL;pst-_capacity pst-_top 0; } 2.4栈的插入操作 STPush 函数  //3.栈的插入操作 void STPush(ST* pst, int x) {assert(pst);//插入数据之前判断一下容量是否足够,不够就扩容if (pst-_top pst-_capacity)//容量满了,扩容{//刚开始插入给4个空间,否则就2倍扩容int newcapacity (pst-_capacity 0 ? 4 : pst-_capacity * 2);int* newarr (int*)realloc(pst-_arr, newcapacity * sizeof(int));if (newarr NULL){perror(realloc failed);return;}pst-_arr newarr;pst-_capacity newcapacity;}//有容量了,插入数据pst-_arr[pst-_top] x;pst-_top; } 2.5栈的判断是否为空操作 STEmpty 函数  //4.判断栈是否为空,空为true,非空为false bool STEmpty(ST* pst) {assert(pst);return pst-_top 0; } 2.6栈的删除操作 STPop 函数 //5.栈的删除操作 void STPop(ST* pst) {//首先你得有元素才能删除对吧assert(pst);assert(!STEmpty(pst));pst-_top--; } 2.7栈的取栈顶元素操作 STTop 函数 //6.取栈顶元素 int STTop(ST* pst) {assert(pst);assert(!STEmpty(pst));return pst-_arr[pst-_top - 1]; } 2.8求栈的大小即有效元素的个数 STSize 函数 //7.求栈的大小即有效元素的个数 int STSize(ST* pst) {assert(pst);return pst-_top; }3-测试下我们自己写的栈 #include Stack.h//1.测试栈插入,删除,取栈顶元素 void testStack1() {ST st;STInit(st);STPush(st, 1);STPush(st, 2);STPush(st, 3);STPush(st, 4);STPush(st, 5);while (!STEmpty(st)){printf(%d : ,STTop(st));STPop(st);}STDestroy(st);}int main() {testStack1();return 0; } 运行,看控制台输出:欧耶,我们自己写的栈可以正常运行 4-您的专属鼓励师 有些事情你永远都没有办法做到“顶尖”因为智力跟不上.但是所有的事情你都可以做到“高段”因为它需要的是时间的累积和精力的打磨.不聪明与聪明之间的区别是很微妙的.有时候我们只会通过一次两次的结果来判断整个人、整件事其实这是不明智的.从小邻居和亲戚在谈论我的时候都会觉得我很聪明。但是只有我自己知道我从来没有聪明过只是看上去比较聪明而已. 修行之路确实枯燥,但是我们把问题搞懂以后就发现他是那样的美妙!一遍学不会没关系吖,多看几遍,我也是学了好多遍呢,小伙伴们肯定学的又快又好!!!最后希望写的内容对小伙伴们有所帮助,我写的如果有哪里不对的地方请在评论区或者私信指出来哦!让我们一起进步吖,任何疑问包括心情不好都可以找我聊聊,我很乐意当你的倾听者吖.
http://www.hkea.cn/news/14360555/

相关文章:

  • 安徽省省建设厅网站ppt模板下载免费素材网站
  • 自己做网站挂广告怎么查看网站开发使用什么技术
  • 袜子技术支持深圳网站建设做食物网站应该考虑些什么
  • h5互动网站建设北京网站建设平台
  • 湛江专业建站公司搅拌机东莞网站建设技术支持
  • 小区的名字建设单位去什么网站备案上传了源程序提示网站建设中
  • 合肥快速做网站客户评论 网站建设
  • 自动跳转手机网站代码什么是网页设计规范
  • 自适应产品网站模板绍兴做外贸网站的公司
  • 建设网站代码网站排名在线优化工具
  • aspnet网站开发模板电商网站模板
  • 做网站推广需要什么专业用织梦做的学校网站
  • ppt模板网站哪个免费沈阳养老保险网站
  • wordpress 建站模板公司网站建设与管理的作用
  • 个人购买域名做企业网站wordpress 列表 展开收缩
  • 网站营销工作流程建设机械网站资讯
  • 昆明网站建设高端定制番禺建设网站公司
  • 建网页还是网站好电商平面设计工资一般多少
  • 个人备案 网站名称 例子微网站制作价格
  • 手机网站建设的教程视频足球网站开发
  • 广告网站模板广州越秀区发布紧急通告
  • 建设银行网站查询房贷信息查询德州北京网站建设
  • 手机建设网站wordpress 标签 文章
  • 做网站建设的有哪些网络科技官网网站建设
  • h5响应式网站上海荷城网站制作公司
  • 上海公司网站设计超酷 flash 网站
  • 百度收录收费 重大网站免费挣钱最快的游戏
  • 电脑上怎么建设网站提供网站备案信息
  • 网站开发税费ic外贸网站建设
  • 建设网站前端asp.net制作的网站开发