东莞做网站公司在哪,网络工程师证书难考吗,泰安营销型网站建设公司,wordpress 自定义按钮要求#xff1a;
输入一行符号#xff0c;以#结束#xff0c;判断其中的对称符号是否匹配。对称符号包括#xff1a; { } 、 [ ] 、 ( )、 如果对称符号能够实现中间对称#xff0c;则输出yes 否则输出no
代码如下#xff1a;
# 定义一个函数
输入一行符号以#结束判断其中的对称符号是否匹配。对称符号包括 { } 、 [ ] 、 ( )、 如果对称符号能够实现中间对称则输出yes 否则输出no
代码如下
# 定义一个函数用于判断输入行中的对称符号是否匹配
def is_symmetric(expression):# 定义对称符号的映射关系brackets {{: }, [: ], (: ), : }# 初始化一个空栈用于存储遇到的左括号stack []# 遍历输入字符串中的每个字符for char in expression:# 如果是左括号则入栈if char in brackets.keys():stack.append(char)# 如果是右括号elif char in brackets.values():# 如果栈不为空且栈顶的左括号与当前右括号匹配if stack and brackets[stack[-1]] char:# 出栈表示找到了匹配的左括号stack.pop()else:# 如果不匹配则对称符号不成立返回noreturn no# 如果栈为空说明所有左括号都有匹配的右括号返回yes否则返回noreturn yes if not stack else no# 测试用例一
test_case_1 ({(({}))})
result_1 is_symmetric(test_case_1)
print(result_1) # 输出yes# 测试用例二
test_case_2 ()()()
result_2 is_symmetric(test_case_2)
print(result_2) # 输出no