C++:如何使用堆栈搜索报价
C++: How to search for quoatations using stacks
我必须创建一个程序来读取文本文件并检查匹配的括号、括号、[]
、引号和块注释。如果存在不平衡,则返回 false,如果平衡,则返回 true。
我已经做了[] () {}
,需要帮助使其适用于/* */
、" "
和' '
,其中单/双引号和块注释中的所有内容都被忽略。我尝试了很多方法,但都没有成功让它们发挥作用。
程序现在需要处理两种状态/模式,而不是一种:
- 它以"匹配模式"启动,将
( { [
放在堆栈上,如果它们匹配,则弹出) } ]
。 - 一旦你读到一个
/*
,你进入"注释模式"并忽略所有内容,直到你读*/
,此时你回到与前一个堆栈的"匹配模式"。"
和'
也是如此.
如果您在"注释模式"下到达输入末尾,则打印出:"不平衡符号",其中包含使您进入该模式的符号。
您只需执行与括号相同的操作即可创建用于打开和关闭的堆栈,然后逐个弹出每个堆栈,然后通过比较弹出的值来检查验证
相关文章:
- 有根的二进制搜索树.保留与其父级的链接
- 在C++中搜索嵌套多映射值
- cpp二进制搜索问题,计算给定数组中输入元素的出现次数
- 二进制搜索树叶数问题
- 为什么二进制搜索在我的测试中不起作用
- 正在尝试重载二进制搜索树分配运算符
- 算法问题:查找从堆栈中弹出的所有序列
- 使用模板进行堆栈实现; "name followed by :: must be a class or namespace"
- 我可以在没有堆栈的情况下在二叉搜索树中实现迭代器吗?
- C++:如何使用堆栈搜索报价
- 二进制搜索树递归插入导致堆栈溢出,迭代插入不起作用
- 为什么这个二叉搜索树会导致堆栈溢出
- 在迭代深度优先搜索(DFS)算法中确定堆栈大小
- 二进制搜索树创建堆栈-overfow
- 可搜索的堆栈
- 在堆栈中搜索值并存储在临时堆栈中
- 使用堆栈的非递归析构函数二叉搜索树
- 在哪里实现堆栈类(在非递归二进制搜索函数中使用)
- 递归地搜索堆栈,但保持堆栈完整
- 在std::map中搜索时堆栈溢出