올바른 괄호(스택)
나의 풀이
function solution(str) { let answer; let stack = []; if(str.length % 2 === 1) return "NO"; for(let i = 0; i < str.length; i++) { if(str[i] === '(') stack.push(str[i]); else stack.pop(); } if(stack.length === 0) answer = "Yes"; else answer = "NO"; return answer; } let a="(()(()))(()"; console.log(solution(a));
다른 풀이
function solution(str) { let answer = "Yes"; let stack = []; for(let x of str) { if(x === '(') stack.push(x); else { if(stack.length === 0) return "NO"; // )로 시작할 경우 NO! stack.pop(); } } if(stack.length > 0) return "NO"; // for문 다 돌았는데 (가 남아있을 경우 NO! return answer; } let a="(()(()))(()"; console.log(solution(a));
Author And Source
이 문제에 관하여(올바른 괄호(스택)), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@_jackson/올바른-괄호스택저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)