C++栈实现括号匹配.docxVIP

  • 25
  • 0
  • 约1.74千字
  • 约 2页
  • 2021-11-08 发布于江苏
  • 举报
//本程序以经亲测,在VS2008中复制即可实现。 // Stack_made_by_zrz.cpp : 定义控制台应用程序的入口点。 //括号匹配问题。利用栈来解决一个字符串之中使用的括号是否匹配的问题。 /* 在表达式中,相同类型的括号(包括:()、[ ]、{})是成对出现的,并且当括号在表达式中嵌套时,不允许出现交叉现象。 检验括号匹配的方法,就是对给定的字符串依次检验:若是左括号,入栈;若是右括号,出栈一个左括号判断是否与之匹配; 是其他字符,不检验。检验到字符串尾,还要检查栈是否为空。只有栈空,整个字符串才是括号匹配的。 */ #include stdafx.h #include iostream #include stdio.h #include string.h using namespace std; #define stacksize 100 //定义栈的空间大小struct stack{ //定义栈的结构体 char strstack[stacksize];//定义栈的存储格式为字符型 int top; //定义栈的栈顶变量 }; void InitStack(stack s){ //定义一个新栈s,初始化栈顶为-1 s.top = -1; } char Push(stack s, char a){ //入栈操作,将字符a入栈s if (s.top == sta

文档评论(0)

1亿VIP精品文档

相关文档