java通过堆栈实现字符串匹配
2012-10-04 00:00
483 查看
package stack; public class StackZiFuPiPei { public int maxSize; public char[] array; public int top; public StackZiFuPiPei(int maxSize) { this.maxSize = maxSize; array = new char[maxSize]; this.top = -1; } public void push(char c) { array[++top] = c; } public char pop() { return (array[top--]); } public char peak() { return (array[top]); } public boolean isEmpty() { return (top == -1); } public boolean isFull() { return (top == maxSize - 1); } } package stack; import java.util.Scanner; public class ZiFuPiPei { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); System.out.println("Input a string:"); String s = scanner.next(); char[] c = s.toCharArray(); StackZiFuPiPei stack = new StackZiFuPiPei(s.length()); for (int i = 0; i < c.length; i++) { if (c[i] == '(' || c[i] == '[' || c[i] == '{') { stack.push(c[i]); } } boolean b = true; for (int i = 0; i < c.length; i++) { if ((c[i] == ']' && stack.pop() != '[') || (c[i] == ')' && stack.pop() != '(') || (c[i] == '}' && stack.pop() != '{')) b = false; } if (b) System.out.println("字符匹配!"); else System.out.println("字符不匹配!"); } }
相关文章推荐
- java通过LinkedList实现堆栈和队列数据结构
- Java中使用正则表达式实现字符串匹配
- Java实现算法导论中Rabin-Karp字符串匹配算法
- Java IO 之 BufferedReader BufferedWriter 通过缓冲区实现字符文本文件的复制
- Java中使用正则表达式实现字符串匹配
- 字符串匹配sunday算法java实现
- Java中使用正则表达式来实现字符串匹配
- java实现字符串匹配问题之求两个字符串的最大公共子串
- Java通过阅读器书写器实现按编码读写字符
- Java中使用正则表达式实现字符串匹配
- java实现字符串匹配问题之求两个字符串的最大公共子串
- 字符串匹配之KMP算法思路、原理与Java实现
- Java中使用正则表达式实现字符串匹配
- Java中使用正则表达式实现字符串匹配
- 字符串匹配之KMP算法思路、原理与Java实现
- 字符串匹配算法之___Sunday算法的java实现
- 算法 字符串匹配之朴素算法和KMP算法及JAVA代码实现
- Java中使用正则表达式实现字符串匹配
- Java中使用正则表达式实现字符串匹配
- 第二次CCF计算机软件能力认证考试题解(Java)--201409--字符串匹配--100分通过