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

为什么织梦做的网站容易被攻击电商app开发多少钱

为什么织梦做的网站容易被攻击,电商app开发多少钱,十堰北京网站建设,asp网站用什么软件栈🔆栈的概念🔆栈的结构🔆栈的实现🔆括号匹配问题🔆结语🔆栈的概念 栈:一种特殊的线性表,其只允许在固定的一端进行插入和删除元素操作。**进行数据插入和删除操作的一端称为栈顶&am…

在这里插入图片描述

  • 🔆栈的概念
  • 🔆栈的结构
  • 🔆栈的实现
  • 🔆括号匹配问题
  • 🔆结语

🔆栈的概念

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

🔆栈的结构

在这里插入图片描述
在这里插入图片描述

🔆栈的实现

数组栈gitt代码链接

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

  • 数组栈
    在这里插入图片描述
  • 链式栈
    在这里插入图片描述

🔆括号匹配问题

OJ链接

给定一个只包括 ‘(’,‘)’,‘{’,‘}’,‘[’,‘]’ 的字符串 s ,判断字符串是否有效。
有效字符串需满足:
左括号必须用相同类型的右括号闭合。
左括号必须以正确的顺序闭合。
每个右括号都有一个对应的相同类型的左括号。
示例一:

输入:s = “()”
输出:true

示例二:

输入:s = “()[]{}”
输出:true

示例三:

输入:s = “(]”
输出:false

  • 解题思路:

在这里插入图片描述

  • 答案:
//动态栈的实现
typedef char STDataType;typedef struct Stack {STDataType* a;//top 指向栈顶int top;//capacity表示栈的容量int capacity;
}ST;//创建栈
ST* STCreate() {ST* stack = (ST*)malloc(sizeof(ST));if (stack == NULL) {perror("malloc::");return NULL;}STInit(stack);return stack;
}//栈的初始化
void STInit(ST* ps) {assert(ps);ps->a = NULL;//top为-1时表示指向栈顶,top为0时表示指向栈顶的下一个ps->top = -1;ps->capacity = 0;
}//栈的判空
bool STEmpty(ST* ps) {assert(ps);return ps->top == -1;
}//栈的判满
bool STFull(ST* ps) {assert(ps);return (ps->top + 1 == ps->capacity);
}//入栈
void STPush(ST* ps, STDataType val) {assert(ps);if (STFull(ps)) {int newcapacity = ((ps->capacity == 0) ? 4 : (2 * ps->capacity));STDataType* tmp = (STDataType*)realloc(ps->a, newcapacity * sizeof(STDataType));if (tmp == NULL) {perror("realloc::");exit(-1);}ps->a = tmp;ps->capacity = newcapacity;}(ps->top)++;ps->a[ps->top] = val;
}//出栈
void STPop(ST* ps) {assert(ps);assert(!STEmpty(ps));(ps->top)--;
}//获取栈元素个数
int STSize(ST* ps) {assert(ps);return (ps->top) + 1;
}//获取栈顶元素
STDataType STTop(ST* ps) {assert(ps);return ps->a[ps->top];
}//销毁栈
void STDestroy(ST* ps) {assert(ps);free(ps->a);ps->a = NULL;ps->top = -1;ps->capacity = 0;free(ps);
}bool isValid(char* s){int len = strlen(s);if (len <= 1) {return false;}ST* st = STCreate();char* cur = s;while (*cur) {if (*cur == '(' || *cur == '[' || *cur == '{') {STPush(st, *cur);}else if (*cur == ')' || *cur ==']' || *cur == '}') {if (STEmpty(st) || (*cur == ')' && STTop(st) != '(') || (*cur == ']' && STTop(st) != '[') || (*cur == '}' && STTop(st) != '{')) {return false;}STPop(st);}cur++;}if (!STEmpty(st)) {return false;}STDestroy(st);st = NULL;return true;
}

🔆结语

到这里这篇博客已经结束啦。
这份博客👍如果对你有帮助,给博主一个免费的点赞以示鼓励欢迎各位🔎点赞👍评论收藏⭐️,谢谢!!!
如果有什么疑问或不同的见解,欢迎评论区留言欧👀

http://www.yayakq.cn/news/652010/

相关文章:

  • 网站推广方案范文做网站手机端需要pc端的源代码吗
  • 百度下载安装免费版郑州网站建设优化
  • 菜鸟网站编程免费创建网站的软件
  • 甘肃网站建设公司哪家好申请做网站、论坛版主
  • 浪尖设计集团有限公司wordpress中文插件seo百度云
  • 贵阳专用网站建设php网站建设制作服务
  • 建站流程主要有哪些佛山网站建设专业定制
  • 公司网站制作找哪家上海进出口贸易博览会
  • wordpress 英文企业站建瓯企业网站建设
  • 找建设网站公司济南建设局
  • 兼职网站同程网站建设分析
  • 兰州网站运营诊断wordpress这个博客
  • 台式机网站建设wordpress3.9安装
  • 空投网站建设互联网产品推广方案范文
  • 公司网站定位建议做网站的后台开发需要会些什么
  • 优秀的电子商务网站查网站域名备案价格
  • 12380网站建设建议两个字的广告公司名字
  • 做网站用go语言还是php数据库网站 建设费用
  • 天河做网站阿里云域名出售
  • 宿迁做网站大公司企业展厅 设计 公司
  • 团购网站模板免费下载莱芜户型优化培训班
  • 自己做视频网站 在优酷推广wordpress右键
  • 知名网站要找企业做网站应该注意什么
  • 建立网站要怎么做南通网站建设推广
  • 网站建设视频vs网络运维前景怎么样
  • 岳阳网站制作公司好用的html 模板网站
  • 有链接的网站怎么做追星做网站
  • 哪些网站是营销型网站典型的网络营销案例
  • 成都商城网站开发包装设计是什么
  • 自己建设的手机网站做百度地图定位太原网站推广怎么做