스크랩 문제 - 유효한 괄호
9608 단어 문제를 풀다
1.switch case
/**
* @param {string} s
* @return {boolean}
*/
var isValid = function(s) {
let arr = []
if(s.length % 2 !== 0) return false
for(let i = 0; i < s.length; i++){
let letter = s[i]
switch(letter){
case '(': {
arr.push(letter)
break
}
case '{': {
arr.push(letter)
break
}
case '[': {
arr.push(letter)
break
}
case ')': {
if(arr.pop() !== '(') return false
break
}
case '}': {
if(arr.pop() !== '{') return false
break
}
case ']': {
if(arr.pop() !== '[') return false
break
}
}
}
return !arr.length
};
2. 해시맵
/**
* @param {string} s
* @return {boolean}
*/
var isValid = function(s) {
let arr = []
let map = {
'(': ')',
'{': '}',
'[': ']'
}
if(s.length % 2 !== 0 ) return false
for(let i = 0;i < s.length; i++){
let letter = s[i]
if(map[letter]){
arr.push(letter)
}
else {
if( map[arr.pop() ] !== letter) return false
}
}
return !arr.length
};
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
리셋 문제 - 전화번호의 알파벳 조합제목:https://leetcode-cn.com/problems/letter-combinations-of-a-phone-number/ 1. 해시는 층층이 비치고 있다 2. 귀속...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.