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

企业网站建设长沙找工作临时工

企业网站建设长沙,找工作临时工,app网站平台建设方案,平面设计现在怎么样本篇博客给大家带来的是用C语言来解答有效的括号! 🐟🐟文章专栏:每日一练 🚀🚀若有问题评论区下讨论,我会及时回答 ❤❤欢迎大家点赞、收藏、分享! 今日思想:不服输的少年…

本篇博客给大家带来的是用C++语言来解答有效的括号!

🐟🐟文章专栏:每日一练

🚀🚀若有问题评论区下讨论,我会及时回答

❤❤欢迎大家点赞、收藏、分享!

今日思想:不服输的少年啊,请你再努力一下!

题目描述: 

思路:

        我们利用栈来解答,首先遍历数组我们找左括号把他放到栈里,然后再找游括号来看看是否与之匹配。如果遍历完之后栈为空代表匹配完成返回true,反之返回false。

        注意如果没学习过栈的可以看看这篇博客:【C++】数据结构 栈的实现-CSDN博客

代码实例:

typedef char STDataType;
typedef struct Stack
{STDataType* arr;int top;//指向栈顶的结构int capacity;//容量
}ST;//栈的初始化
void STInit(ST* ps)
{ps->arr = NULL;ps->top = ps->capacity = 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->arr, newCapacity * sizeof(STDataType));if (tmp == NULL){perror("realloc fail!");exit(1);}ps->arr = tmp;ps->capacity = newCapacity;}//空间够了ps->arr[ps->top++] = x;
}
//判断栈是否为空
bool StackEmpty(ST* ps)
{assert(ps);return ps->top == 0;
}
//拿栈顶的数据
STDataType StackTop(ST* ps)
{assert(!StackEmpty(ps));return ps->arr[ps->top - 1];
}
//栈的销毁
void STDestroy(ST* ps)
{if (ps->arr)free(ps->arr);ps->arr = NULL;ps->top = ps->capacity = 0;
}
//出栈-栈顶
void StackPop(ST* ps)
{assert(!StackEmpty(ps));--ps->top;
}
bool isValid(char* s) 
{ST st;STInit(&st);char* pi=s;//遍历所有的字符串swhile(*pi !='\0'){if(*pi=='(' ||*pi=='[' ||*pi=='{'){StackPush(&st,*pi);}else{//找右括号并且与之匹配if(StackEmpty(&st))//判断栈是否为空{STDestroy(&st);return false;}char top=StackTop(&st);if((top=='(' && *pi != ')')|| (top=='[' && *pi !=']')|| (top=='{' && *pi !='}')){STDestroy(&st);return false;}StackPop(&st);}pi++;}//栈为空,说明所有的左括号都已经匹配完,反之非有效字符bool ret =StackEmpty(&st)?true:false;return ret;
}

完!! 

http://www.dtcms.com/a/593336.html

相关文章:

  • 六安网站建设报价方案陕西住房和建设厅网站
  • Elasticsearch:如何为 Elastic Stack 部署 E5 模型 - 下载及隔离环境
  • 第3章,[标签 Win32] :创建窗口01,CreateWindow 函数初识
  • FreeRTOS操作系统
  • 成都 在线 网站建设wordpress怎么改标题和meta
  • 正确理解类中的公共方法、内部方法和私有方法
  • 太平洋在线企业建站系统iphone wordpress
  • 零基础入门C语言之C语言实现数据结构之单链表
  • 4. SpringBoot 自定义Banner使用与原理解析
  • Docker环境搭建:Windows/macOS/Linux全平台教程
  • mac安装GIT
  • 开锁公司做网站网站对企业的好处
  • 我爱你域名的网站html5网站建设报价
  • Diffusion VS Flow Matching
  • 电子电气架构 --- 一个具体项目的需求管理(实例化)
  • 11.string(下)
  • OpenVINS代码解读---State.h
  • 提供深圳网站制作公司永久使用免费虚拟主机
  • 智能时代的缘起:从ChatGPT到修行之路
  • 智能守护绿水青山:视频融合平台EasyCVR在森林防火监控中的实战应用
  • 如何做好网站建设前期网站规划软文写手兼职
  • docsify 本地部署完整配置模板 || 将md文件放到网页上展示
  • Bash Shell脚本学习——唇读数据集格式修复脚本
  • 网站界面用什么软件做建设网站需申请什么
  • 底层视觉及图像增强-项目实践(十六-0-(8):端到端DeepHDRNet:从原理到LED显示工程的跨界实践):从奥运大屏,到手机小屏,快来挖一挖里面都有什么
  • 视频号视频下载到手机的详细教程,以及常使用的工具!
  • 禹城网站建设公司安卓网站开发视频
  • 江国青:从郧阳沃土到法治与媒体前沿的跨界行者
  • Mediasoup的SFU媒体服务转发中心详解(与传统SFU的区别)
  • 招标网站免费企业作风建设心得体会