Java实现括号匹配
来源:互联网 发布:活动抽奖软件 编辑:程序博客网 时间:2024/06/07 21:04
Java实现括号匹配
利用Java的Stack实现括号匹配,包括是否成对出现以及是否正确嵌套。
例如:( ) , { } , [ ] , ( { } [ ] )为正确嵌套,) } , ( { ) } , ( { [ } ] )为非正确嵌套。
以下为实现代码:
import java.util.Scanner;import java.util.Stack;public class SymbolMatch { public static void main(String[] args) { Stack<Character> stack = new Stack<Character>(); Scanner sc = new Scanner(System.in); while (sc.hasNext()) { String target = sc.nextLine(); char[] bytes = target.toCharArray(); // 将第一个字符压入栈 stack.push(bytes[0]); /* * 从第二个字符开始,依次与栈中的字符匹配 */ for (int i = 1; i < bytes.length; ++i) { Character c1 = (Character) stack.peek(); Character c2 = bytes[i]; if ((c1.toString().equals("(") && c2.toString().equals(")")) || (c1.toString().equals("[") && c2.toString().equals("]")) || (c1.toString().equals("{") && c2.toString().equals("}"))) { stack.pop(); } else { stack.push(c2); } } boolean isMatch = stack.isEmpty(); System.out.println("栈内内容:" + stack); System.out.println("括号匹配结果:" + isMatch); } sc.close(); }}
0 0
- java实现括号匹配
- Java实现括号匹配
- java实现括号匹配
- 括号匹配Java实现
- java栈实现括号匹配
- 括号是否匹配 java实现
- Java实现括号匹配校验
- java实现最长匹配括号的长度
- 使用栈实现括号匹配算法-java
- java版 利用栈实现括号匹配
- java利用栈实现括号()[]匹配问题
- ACM括号匹配问题(java实现)
- 括号匹配算法的java实现
- STL实现括号匹配
- STL实现括号匹配
- 栈实现括号匹配
- 栈实现括号匹配
- 栈实现括号匹配
- Java String类型含普通字符以及中文字符,计算等价的中文字符串长度
- 12C新特性
- Eclipse alt+/失效 没有提示
- Apriori算法详解之【一、相关概念和核心步骤】
- ubuntu常用的一些命令
- Java实现括号匹配
- 大数据运维框架(三)--运维框架参考:CDH cloudermanager & apache ambari
- Universal-Image-Loader的使用
- MQ之间互相发送消息(三)
- RtlAdjustPrivilege进程提权,权限ID对照表
- python 字符串&格式化-----廖雪峰教程学习笔记
- sublime 常用设置
- 常见错误——could not get lock /var/lib/dpkg/lock -open
- 学习MySQL第二天---JDBC