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

為了賬號安全,請及時綁定郵箱和手機立即綁定

default后的內容毫無必要吧?

看了老師講得這個括號匹配的問題,感覺有幾個問題:

1、首先老師這個程序只能判斷所有字符都為括號的匹配問題,只要里面存在其他字符(即使為空格),就會判斷為不匹配,比如[(4)]這種;

2、因此,default后完全是多余的,因為根本不會存在其他字符的情形;

3、而且,default后面去掉,該程序對于完全是括號的字符的括號匹配判斷完全是夠用的,首先像[()]這種肯定是能判斷的,而且針對后面這種[()]],當判斷了,前面四個括號后,pStack所指的棧和pNeedStack所指的棧此時均為空了,而且currentNeed也被置為了0;因此接下來會執行:

if(pStack->stackEmpty())	
{		
cout?<<?"字符串括號匹配"?<<?endl;	
}	
else	
{		
cout?<<?"字符串括號不匹配"?<<?endl;	
}

也就判斷出了[()]]括號不匹配了;

我想老師之所以寫了default是因為老師還寫了字符串中還有其他字符的情形的括號匹配問題

正在回答

2 回答

其實說白了一個棧就足夠解決這個問題了,老師寫這些應該是為了后續擴展的需要吧

0 回復 有任何疑惑可以回復我~

我覺得有道理,只要currentNeed設為0,[()]]中最后一個‘]’就可以放入pStack棧中,此時pStack非空就可得不匹配

0 回復 有任何疑惑可以回復我~

舉報

0/150
提交
取消

default后的內容毫無必要吧?

我要回答 關注問題
微信客服

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

幫助反饋 APP下載

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

公眾號

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