输入输出"("和")",判断输入是否正确

给出函数,实现功能

  int nesting(String s);

输入一个由(和)组成的字符串S,如果S表示一个格式正确的括号,表达式则返回1,否则返回0.

例如:

(((())))() 为正确的

((()) 为不正确的


问题补充: 这个问题是要求输入自己输入括号,然后由程序判断输入的括号是正确还是错误


哆啦的时光机
浏览 766回答 2
2回答

偶然的你

我不知道Java的string是否支持索引器访问字符,如果支持的话就是这么写:&nbsp;int x=0;for(int i=0;i<s.Length();i++){  if(s[i]=='(')x+=1;  else if(s[i]==')')x-=1;  if(x<0)break;}return x==0?1:0;&nbsp;红色字符说明:印象中Java的字符串Length是个函数,如果不是的话就去掉那对括号吧。

一只甜甜圈

int count = 0;for (int i = 0; i < str.Length; i++) {&nbsp; if (str[i] == '(') {&nbsp;&nbsp;&nbsp; count++;&nbsp; }&nbsp; else if (str[i] == ')') {&nbsp;&nbsp;&nbsp; count--;&nbsp;&nbsp;&nbsp; if (count < 0) {&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; return false; //此处表示先有)再有(,如())这种形式&nbsp;&nbsp;&nbsp; }&nbsp; }&nbsp; else {&nbsp;&nbsp;&nbsp; return false; //遇到了不是(或)的符号&nbsp; }}return (count == 0); //如果coutn不为0表示(和)的数量不批配
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java