支持api网站开发,seo网络推广哪家专业,备案域名出售,做网站维护工作难吗描述现在#xff0c;有一行括号序列#xff0c;请你检查这行括号是否配对。输入第一行输入一个数N(0], (, ) 四种字符输出每组输入数据的输出占一行#xff0c;如果该字符串中所含的括号是配对的#xff0c;则输出Yes,如果不配对则输出…描述现在有一行括号序列请你检查这行括号是否配对。输入第一行输入一个数N(0], (, ) 四种字符输出每组输入数据的输出占一行如果该字符串中所含的括号是配对的则输出Yes,如果不配对则输出No样例输入3[(])(])([[]()])样例输出NoNoYes解题思路由于用栈来实现要复杂得多这里可以访问“栈”内元素“栈”顶是右括号而非用栈表示的左括号括号序列中的字符逐个入“栈”发现紧挨着“栈顶”的一个元素为]或)时迅速匹配“已配对括号都出栈后”再往前数一个位置的[或(。注意事项串长小于10000注意边界当所有的括号都匹配以后“栈顶指针”指向其第一个位置。参考代码C语言描述#include int main(){char s[10001],x[10001];int t, a, c;scanf(%d, a);while(a--) {scanf(%s,s);t c 0;while ( c if( t 1 (x[t-1] ] x[t-2] [ || x[t-1] ) x[t-2] () )t - 2;if(t 1) printf(Yes\n);else printf(No\n);}return 0;}JAVA语言描述import java.util.*;class Main {public static void main(String[] args) throws Exception {Scanner cin new Scanner(System.in);int a cin.nextInt();while (0 String s;List vec new ArrayList();s cin.next();vec.add( );for (int i 0; i vec.add( s.charAt(i));int b vec.size();if (vec.get(b-1).charAt(0)-1 vec.get(b-2).charAt(0) ||vec.get(b-1).charAt(0)-2 vec.get(b-2).charAt(0)){vec.remove(b-1);vec.remove(b-2);}}if (1 vec.size()) System.out.println(Yes);else System.out.println(No);}}}