下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、字符串中左右括号匹配判断一、要求: 判断一个字符串中的小括号是否匹配。例如,字符串“()()”中的小括号匹配,而“)()”中的小括号不匹配。如果匹配则提示匹配,如果不匹配则提示第一个不匹配的括号的位置。 二、 效果: 三、思路: 得到字符串,从头开始,一个一个字符判断。 (1) 如果是左括号则压入栈中。 (2) 如果是右括号,则将一个左括号从栈中弹出,匹配一对。若此时栈中无元素,那么这个右括号没有匹配的左括号。 最后,如果栈不为空,则有左括号没有匹配。 四、核心代码: for(i = 0; i <
2、;brackets.length(; i+ if(bracketsi = '(' /1.left bracket bracketStack.push('('
3、60; if(bracketStack.size( = 1 bottom = i; &
4、#160; else if (bracketsi = '' /2.right bracket if(!bracketStack.empty(
5、160; tmp = bracketStack.top(; bracketStack.pop(; else
6、 res = nMatch; /move to wrong position
7、; i+; break;
8、160; /ingore non bracket 五、所有代码: 代码 /BracketMatch.cpp/judge a string whether is brackets match'(' and '' string,/while not match,return first positio
9、n/powered by alan/2010.10.14#include #include <string>#include using namespace std;int main( /define data string brackets = "" stack<char>
10、60;bracketStack; char tmp; enum Resmatched,nMatchres; res = matched; int bottom = 0; /get input co
11、ut<<"输入需要匹配的括号串"< cin>>brackets; /judge int i; for (i = 0 ; i < brackets.length(; i+
12、160; if (bracketsi = '(' /1.left bracket bracketStack.push( '(' ;
13、160; if (bracketStack.size( = 1 bottom = i;
14、; else if (bracketsi = '' /2.right bracket if (!bracketStack.empty(
15、 tmp = bracketStack.top(; bracketStack.pop(; else
16、; res = nMatch; /move to wrong position &
17、#160; i+; break ;
18、0; /ingore non bracket /have '(' not match if (!bracketStack.empty( res = nMatch; /get the first not match i =
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 安鑫园施工方案
- 河北省保定市唐县一中2023-2024学年高三9月月考生物试题(解析版)
- 儿科护理学护理实践中的健康教育
- 吉林省镇赉县镇赉镇中学2025-2026学年初三教学情况调研语文试题含解析
- 卵巢癌患者的日常护理要点
- 福建省部分市县2025-2026学年初三下学期第一次模拟考英语试题含解析
- 养老护理消防安全培训方法
- 学习四项监督制度测试题一模板
- 行为金融学视角下的资产定价
- 应急抗早预案(3篇)
- 三级 模块二 项目六 功能促进 任务三 指导或协助老年人使用安全防护性辅助器具
- 2026年上半年新疆维吾尔自治区招聘事业单位人员考试参考试题及答案解析
- 门窗销售考核制度
- 化工设备操作与应急处理手册
- 2026年浙江机电职业技术学院单招综合素质考试模拟试题含详细答案解析
- 黑龙江2025年黑龙江省疾病预防控制中心招聘27人笔试历年参考题库附带答案详解
- 器材仓库制度规范
- 2026年陕西航空职业技术学院单招职业适应性测试题库及完整答案详解1套
- 2025年旅游管理专升本经典真题集(附答案)
- 法律咨询服务方案模板
- 血液透析患者心力衰竭的诊断与治疗
评论
0/150
提交评论