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

网站的导入流量怎么做google搜索中文入口

网站的导入流量怎么做,google搜索中文入口,公司的网站续费,wordpress 创建分类题目描述 分析 我们刚上来的思路可能是:找出这三种括号的个数 如果都是偶数 说明匹配 但是这里还有一个顺序问题 比如 " )( "这样是不匹配的! 所以这种思路不可取! 我们想 如果遇到左括号,把他读到一个顺序表中&#…

题目描述

在这里插入图片描述

分析

我们刚上来的思路可能是:找出这三种括号的个数
如果都是偶数 说明匹配
但是这里还有一个顺序问题 比如 " )( "这样是不匹配的!
所以这种思路不可取!

我们想 如果遇到左括号,把他读到一个顺序表中,然后遇到匹配的右括号就把他放出来,也就相当于对对碰
比如 " { [ ( ) ] } " 我们会把 { [ ( 读到一个顺序表里
然后依次让( ) [ ] { }对对碰消掉,如果最后顺序表中没有元素是不是说明就匹配呢?
这里我们就考虑使用 栈!
因为栈只有压栈和出栈,十分符合这道题

代码

由于想省事,我就直接把之前写的栈的实现给搬到了题目中
其实 写几个有用的接口就可以 没必要都写

typedef int STDataType;
typedef struct Stack {//动态开辟数组STDataType* a;int top;//栈顶int capacity;//容量
}ST;
//初始化
void StackInit(ST* ps);
//压栈
void StackPush(ST* ps, STDataType x);
//出栈
void StackPop(ST* ps);
//获取栈中有效元素个数
int StackSize(ST* ps);
//显示栈顶元素
STDataType StackTop(ST* ps);
//检测栈是否为空
bool StackEmpty(ST* ps);
//销毁
void StackDestory(ST* ps);//初始化
void StackInit(ST* ps)
{assert(ps);ps->a = NULL;ps->capacity = ps->top = 0;
}
//压栈
void StackPush(ST* ps, STDataType x)
{assert(ps);//首先检查是不是需要扩容if (ps->top == ps->capacity){int newCapacity = ps->capacity == 0 ? 4 : 2 * ps->capacity;STDataType* tmp = (STDataType*)realloc(ps->a,sizeof(STDataType) * newCapacity);if (tmp == NULL){printf("realloc fail");exit(-1);}ps->capacity = newCapacity;ps->a = tmp;}ps->a[ps->top] = x;ps->top++;
}
//出栈
void StackPop(ST* ps)
{assert(ps);assert(ps->top >= 0);//只需要ps--就可以了ps->top--;}
//获取栈中有效元素个数
int StackSize(ST* ps)
{assert(ps);return ps->top;
}
//获取栈顶元素
STDataType StackTop(ST* ps)
{assert(ps);return ps->a[ps->top-1];
}
//检测栈是否为空
bool StackEmpty(ST* ps)
{assert(ps);return ps->top == 0;
}
//销毁
void StackDestory(ST* ps)
{assert(ps);free(ps->a);ps->a = NULL;//ps->a 不用了 所以置空就可以了ps->capacity = ps->top = 0;
}bool isValid(char * s){ST st;StackInit(&st);// 左括号入栈,右括号出栈while(*s){//如果是左括号 那么入栈if((*s=='{') ||(*s=='(') || (*s=='[')){StackPush(&st,*s);++s;//判断完这一次 向后走}else{//如果上面的if没有执行 说明第一个就是右括号那么 肯定不匹配if(StackEmpty(&st)){//异常情况返回需要先销毁栈 否则容易造成内存泄漏StackDestory(&st);return false;}char ch=StackTop(&st);//获取栈顶元素if ((ch=='{' && *s=='}')//匹配是哪一种情况|| (ch== '[' && *s==']')|| (ch=='(' && *s==')')){StackPop(&st);//如果满足一对括号匹配那么出栈!++s;}else//如果不匹配 返回false{//返回之前防止内存泄漏 要销毁栈StackDestory(&st);return false;}}}//利用临时变量判断是否为空,为空说明都读走了 否则说明有不匹配的!bool ret=StackEmpty(&st);//销毁--防止内存泄漏!StackDestory(&st);return ret;
}
http://www.yidumall.com/news/94564.html

相关文章:

  • 共青城网站建设公司北京seo业务员
  • 厦门seo网站建设费用推广平台有哪些渠道
  • 微信网站在线登录网页版零食软文范例300字
  • 惠州做网站公司哪家好电脑系统优化软件十大排名
  • 小说网站做封面要钱吗网站建设详细方案模板
  • 国外网站怎么做免费关键词排名优化软件
  • 网站开发技术指标网络推广员工作内容
  • 本机网络ip做网站电商网站建设价格
  • 学做网站丛什么开始太原网站推广排名
  • 美女做暖暖视频的网站网页制作与设计教程
  • 做国际贸易如何建网站官网制作公司
  • 做底单的网站seo优化的优点
  • 珠海网站开发维护科技公司世界杯比分查询
  • 花钱做网站注意些什么阿里云免费域名
  • 会做网站怎么赚钱廊坊快速优化排名
  • 低面效果在哪个网站做广告策划方案怎么做
  • 莱芜金点子今天最新招聘seo短视频加密路线
  • 贵阳网站建设企业微信上如何投放广告
  • 网站服务器和空间大小广州软件系统开发seo推广
  • 做h5页面的网站南平网站seo
  • 网站推广注册品牌推广是做什么的
  • 大城 网站建设百度商业平台
  • 姜堰网站建设学大教育培训机构怎么样
  • 建站出海网络广告有哪些形式
  • 农产品网站建设背景百度学术官网入口
  • 网页制作与网站建设实战大全舆情视频
  • 长春模板建站公司搜索点击软件
  • 什么是网站名称文件夹搜索引擎排名优化方案
  • 手机建立网站ip域名查询网站入口
  • 怎么做网站的优化网络广告策划书案例