PHP實現括號匹配(二)

2021-09-11 22:10:16 字數 1031 閱讀 2795

找出以下字串**現成對的括號

[)[)
要求交叉出現的也需要返回

<?php

/** * created by phpstorm.

* user: archerzdip

* date: 2019-03-04

* time: 18:00

*//**

* php實現棧資料結構和括號匹配

* * - $str string `資料字串`

* * @param string $str

* @return array|bool

*/function

checkbracket

(string $str)'

,']'

,')'];

// 棧集合

$stack=[

];// 結果集合

$res=[

];while

(count

($arr

)>0)

elseif(

in_array

($shift

,$right

,true))

}}}return

empty

($res)?

false

:$res;}

$test

='[)[)'

;var_dump

(checkbracket

($test))

;

結果

array (size=4)

0 => string '{}' (length=2)

1 => string '()' (length=2)

2 => string '' (length=2)

3 => string '()' (length=2)

若有不足請見諒包含!

括號匹配(二)

時間限制 1000 ms 記憶體限制 65535 kb 難度 6 描述 給你乙個字串,裡面只包含 四種符號,請問你需要至少新增多少個括號才能使這些括號匹配起來。如 是匹配的 是匹配的 是不匹配的 是不匹配的 輸入第一行輸入乙個正整數n,表示測試資料組數 n 10 每組測試資料都只有一行,是乙個字串s...

括號匹配(二)

題目 問題 給你乙個字串,裡面只包含 四種符號,請問你需要至少新增多少個括號才能使這些括號匹配起來。如 是匹配的,所需括號個數為 0.是匹配的,所需括號個數為 0.是不匹配的,所需最少括號個數為 3.是不匹配的,所需最少括號個數為 2.分析 此題來自 作者同時給出了正確答案。但是,感覺答案還不是特別...

括號匹配(二)

演算法 動態規劃 描述給你乙個字串,裡面只包含 四種符號,請問你需要至少新增多少個括號才能使這些括號匹配起來。如 是匹配的 是匹配的 是不匹配的 是不匹配的 輸入第一行輸入乙個正整數n,表示測試資料組數 n 10 每組測試資料都只有一行,是乙個字串s,s中只包含以上所說的四種字元,s的長度不超過10...