【JS】有効かっこ
1573 ワード
一つだけ含めると指定しました.
有効な文字列を満たす必要があります.左括弧は同じ種類の右括弧で閉じなければなりません. 左括弧は正しい順番で閉じなければなりません. 注意空の文字列は有効な文字列と考えられます.
例1:
この問題は個人の時間が一番長いはずです.ずっと考えが見つからなくて、3時間を超えました.
最終的な解決方法は三つのかっこで長い文字列全体を逐次比較し、同じものがあれば置換し、置換可能なものがないまでループします.
最後にfalseまたはtrueを返します.
解法二: やはり解答を補充しましょう.一部の問題を作ってから、この問題を見に来てもそんなに難しくないです.
やはりstr.replaceを使って置換し、戻り値を受け取ったら、再度置換を繰り返します.
'('
、')'
、'{'
、'}'
、'['
の文字列を使って、文字列が有効かどうかを判定します.有効な文字列を満たす必要があります.
例1:
: "()"
: true
例 2: : "()[]{}"
: true
例 3: : "(]"
: false
例 4: : "([)]"
: false
例 5: : "{[]}"
: true
この問題は個人の時間が一番長いはずです.ずっと考えが見つからなくて、3時間を超えました.
最終的な解決方法は三つのかっこで長い文字列全体を逐次比較し、同じものがあれば置換し、置換可能なものがないまでループします.
最後にfalseまたはtrueを返します.
/**
* @param {string} s
* @return {boolean}
*/
var isValid = function(s) {
var arr = ['()','[]','{}'];
if(s.length%2 !=0){
return false;
}
while((s.indexOf('()')>=0 || s.indexOf('{}')>=0 || s.indexOf('[]')>=0)){
for(var i=0;i
76/76個がテストケースによって実行される場合:280 ms解法二: やはり解答を補充しましょう.一部の問題を作ってから、この問題を見に来てもそんなに難しくないです.
やはりstr.replaceを使って置換し、戻り値を受け取ったら、再度置換を繰り返します.
//2018/11/17 Sat
var isValid = function(s) {
var len=s.length/2;
for(var i=0;i0 ?false:true;
};
76/76個がテストケースによって実行される場合:116 ms