括號匹配問題

2021-09-29 17:40:32 字數 909 閱讀 5164

public

static boolean isvalid

(string s)")

;")"));

//if(s.length()==1)

// return false;

int len=s.

length()

;//記錄字串的長度

if(len==0)

//s為""時直接返回true

return

true;if

(len%2!=

0)//能夠正確匹配的基本要求是成對出現,所以當個數是奇數個時,直接返回false

return

false

;/*利用棧來完成。將元素乙個個入棧,先判斷下乙個入棧的元素同棧頂元素是否匹配,

如果匹配。棧頂元素出棧,如果不匹配,下乙個元素入棧,然後新增下乙個元素

最後判斷棧是不是為空,如果不為空,就說明有括號不匹配*/

stack stack=

new stack<

>()

;if(len>1)

if(map.

get(key)

.equals

(value)

)else

}else

//讓j=i,防止i走到後面去了,但j還沒走。

stack.

add(s.

substring

(j, j+1)

);j+=2

;}i++;}

if(stack.

isempty()

) flag=

true

;else

flag=

false;}

return flag;

}

括號匹配問題

時間限制 3000 ms 記憶體限制 65535 kb 難度 3 描述 現在,有一行括號序列,請你檢查這行括號是否配對。輸入第一行輸入乙個數n 0輸出 每組輸入資料的輸出佔一行,如果該字串中所含的括號是配對的,則輸出yes,如果不配對則輸出no 樣例輸入 3 樣例輸出 no noyes 基本演算法思...

括號匹配問題

假設表示式中包含三種括號 圓括號 方括號和花括號,它們可以相互巢狀,如 等均為正確的格式,而等為不正確的格式。以下為演算法程式 括號匹配問題 include include int main char ch while ch getchar eof count 0 break case if cou...

括號匹配問題

問題描述 假設表示式中允許包含兩種括號 圓括號與方括號,其巢狀的順序隨意。如 或 等為正確的匹配 而 或者 或者 均為錯誤的匹配。現要求編寫程式,判斷輸入的一行括號是否是匹配的,如果是匹配的,輸出yes,否則輸出no。解題思路 檢驗括號是否是匹配的方法可以用 期待的急迫程度 這個概念來描述。例如考慮...