亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

輸入輸出"("和")",判斷輸入是否正確

輸入輸出"("和")",判斷輸入是否正確

哆啦的時光機 2018-12-04 09:08:05
給出函數,實現功能  int nesting(String s);輸入一個由(和)組成的字符串S,如果S表示一個格式正確的括號,表達式則返回1,否則返回0.例如:(((())))() 為正確的((()) 為不正確的問題補充: 這個問題是要求輸入自己輸入括號,然后由程序判斷輸入的括號是正確還是錯誤
查看完整描述

2 回答

?
偶然的你

TA貢獻1841條經驗 獲得超3個贊

我不知道Java的string是否支持索引器訪問字符,如果支持的話就是這么寫:

 

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;

 

紅色字符說明:印象中Java的字符串Length是個函數,如果不是的話就去掉那對括號吧。


查看完整回答
反對 回復 2018-12-08
?
一只甜甜圈

TA貢獻1836條經驗 獲得超5個贊

int count = 0;

for (int i = 0; i < str.Length; i++) {

  if (str[i] == '(') {

    count++;

  }

  else if (str[i] == ')') {

    count--;

    if (count < 0) {

      return false; //此處表示先有)再有(,如())這種形式

    }

  }

  else {

    return false; //遇到了不是(或)的符號

  }

}

return (count == 0); //如果coutn不為0表示(和)的數量不批配


查看完整回答
反對 回復 2018-12-08
  • 2 回答
  • 0 關注
  • 789 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號