字符串中有效括号问题的解决
在网上看到这样一个有意思的·算法题,觉得很有意思,就想着解决一下,具体题目的要求如下:
给定一个只包含”(“,”)“,”[“,”]“,”{“,”}“的字符串,判断字符串是否有效,字符串有效需要满足如下条件:
- 左括号必须用相同类型的右括号闭合;
- 左括号必须以正确的顺序闭合。
注意:空字符串可以被认为是有效字符串。
看到这个题目,我首先的想法是把字符串进行反转,然后对反转后的字符串进行改造,就是把字符串里面的所有的括号变成与之对应的括号,然后我们看改变之后的字符串和原始的字符串是否相等,如果相等,那么就表示原始字符串是一个有效的括号字符串。
这个想法比较简单,但是其中有一些Python中字符串和列表的内置函数(方法),这写方法中我们需要选择一个正确的方法,这样可以提高我们程序的运行速度。
整个程序的代码如下:
def effectiveBracket(string):
resString = string[::-1]