[解決済み] JavaScriptです。括弧のバランスをとる
2022-03-04 21:20:58
質問
<ブロッククオート2種類の文字だけで構成される文字列があるとする。 (") (" と ")"です。 . のどちらかを挿入して、括弧のバランスをとります。 "(" または ")"です。 を必要な回数だけ入力します。
挿入しなければならない最小の文字数を決定する。 例s = "(()))" . これを有効にするには、1つのシーケンスを挿入する必要があります。 "(" を先頭に追加します。これで、1回挿入しただけで文字列のバランスがとれました。答えは1です。
私の問題は、文字列は有効ですが、シーケンスを有効にする最小の挿入数を決定することができないことです。
let output = [];
function checkParanthesis(str) {
let count = 0;
for (let i = 0; i < str.length; i++) {
if (str[i] === "(") {
output.push(str[i]);
count++;
} else if (str[i] === ")") {
if (output.pop() !== "(") {
count++
}
}
console.log(count);
}
return output.length;
}
checkParanthesis('()))')
解決方法は?
最後の開き括弧を追跡するための配列を取り、閉じ括弧が見つかったらそれを削除することができます。
閉じ括弧が見つからない場合は、他の文字を配列に追加して、その配列の長さを結果として返します。
function checkParanthesis(str) {
let brackets = [];
for (let i = 0; i < str.length; i++) {
if (str[i] === "(") {
brackets.push(str[i]);
} else if (str[i] === ")") {
if (brackets[brackets.length - 1] === "(") brackets.pop();
else brackets.push("#");
}
}
return brackets.length;
}
console.log(checkParanthesis('()))'));
関連
-
[解決済み】Angular JS Uncaught Error。[インジェクター:モジュラー]。
-
[解決済み】Jestが予期しないトークンに遭遇した
-
[解決済み] JavaScriptで "use strict "は何をするのか、その根拠は?
-
[解決済み] JavaScriptで文字列が部分文字列を含むかどうかを確認する方法は?
-
[解決済み] あるJavaScriptファイルを他のJavaScriptファイルにインクルードするにはどうすればよいですか?
-
[解決済み] JavaScriptでメールアドレスを検証するのに最適な方法は何ですか?
-
[解決済み] JavaScriptでタイムスタンプを取得する方法は?
-
[解決済み】JavaScriptの比較では、どちらの等号演算子(== vs ===)を使うべきですか?
-
[解決済み】JavaScriptで文字列の出現箇所をすべて置換する方法
-
[解決済み】オブジェクトからプロパティを削除する(JavaScript)
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】Heroku:ノードアプリで「このアプリにはデフォルトの言語が検出されませんでした」エラーがスローされる
-
[解決済み】React Js: Uncaught (in promise) SyntaxError: 位置 0 の JSON で予期しないトークン < が発生しました。
-
[解決済み】フォームコントロールの値アクセサがない
-
[解決済み] 解決済み】clearInterval()が動作しない [重複] [重複]
-
[解決済み] React with ES7: Uncaught TypeError: Cannot read property 'state' of undefined [duplicate] (未定義のプロパティ'state'を読み込むことはできません。
-
[解決済み】Reactのeslintエラーはpropsの検証で見つからない
-
[解決済み】JS ファイルが net::ERR_ABORTED 404 (Not Found) を取得する)
-
[解決済み】Kendo Observable Bindingと併用する場合、Kendo Switch Labelsを変更することは可能ですか?[Kendo-UI]です。
-
[解決済み】PhantomJS 2.1.1を使用してReactJSアプリケーションをレンダリングできない理由とは?
-
[解決済み] [Solved] Uncaught Invariant Violation: 前のレンダリング中よりも多くのフックをレンダリングする