博主曾经有幸参加一次北京某心某力的笔试海选,深感技术基础的重要性,没怎么准备,加上自己对于算法和排序方面的知识欠缺,显然是没有成功得到面谈的机会,都是这么多年面向百度编程的原因,欠缺了系统的学习和思考,长时间使用开发工具编程,纸上手写确实难上不少,总之一句话,还是自己太菜,基础知识完全不懂,每天做着知识搬运工的工作,留下的没有技术的眼泪。
其中的一道试题给大家分享下,希望对看到文章的人有所帮助,有了新的内容的话,我会不定时更新,争取能和大家一起学习。
目录
最后,希望我们能共同成长进步吧,翻过这座山他们就会听到你的故事。
Java判定括号的对称性包含{}()[]
解法思路代码如下,主要用到了Stack栈技术帮助解决
stack.peek();与stack.pop();区别
peek能获取到栈顶数据不会移除栈,pop获取到栈顶数据会移除栈
实现代码如下:
/**
* 判定括号的对称性
*/
public static boolean anaylis(String s) {
char[] temps = s.toCharArray();
if (temps.length==0) {
return false;
}
Stack<Character> stack=new Stack<Character>();
for (int i = 0; i < temps.length; i++) {
char temp=temps[i];
if ( temp== '(') {
stack.push(temp);
} else if (temps[i] == '{') {
stack.push(temp);
} else if (temps[i] == '[') {
stack.