Skip to content

Conversation

@hozzijeong
Copy link
Contributor

답안 제출 문제

작성자 체크 리스트

  • Projects의 오른쪽 버튼(▼)을 눌러 확장한 뒤, Week를 현재 주차로 설정해주세요.
  • 문제를 모두 푸시면 프로젝트에서 StatusIn Review로 설정해주세요.
  • 코드 검토자 1분 이상으로부터 승인을 받으셨다면 PR을 병합해주세요.

검토자 체크 리스트

Important

본인 답안 제출 뿐만 아니라 다른 분 PR 하나 이상을 반드시 검토를 해주셔야 합니다!

  • 바로 이전에 올라온 PR에 본인을 코드 리뷰어로 추가해주세요.
  • 본인이 검토해야하는 PR의 답안 코드에 피드백을 주세요.
  • 토요일 전까지 PR을 병합할 수 있도록 승인해주세요.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

안녕하세요! 해당 풀이도 좋지만 Hashmap를 사용하면 좀 더 간결하게 작성할 수 있을거 같아요!

/**
 * @param {string} s
 * @return {boolean}
 */
var isValid = function(s) {
  const closeMap = {
    '(': ')',
    '{': '}',
    '[': ']'
  };

  const stack = [];

  for (const ch of s) {
    if (ch in closeMap) {
      stack.push(closeMap[ch]);        // 기대되는 닫는 괄호를 push
    } else {
      if (stack.pop() !== ch) return false; // 닫는 괄호면 바로 비교
    }
  }

  return stack.length === 0;
};

@TonyKim9401
Copy link
Contributor

@DaleStudy 리뷰해줘

@dalestudy
Copy link
Contributor

dalestudy bot commented Dec 22, 2025

안녕하세요! 여러 문제를 깔끔하게 해결하셨네요. 특히 maxArea의 투 포인터 접근법은 효율적이고 직관적입니다. 몇 가지 피드백 드리자면:

  1. 시간/공간 복잡도 명시: maxArea는 투 포인터로 O(n) 시간, O(1) 공간입니다. WordDictionary는 내부 Set 사용으로 평균 O(1) 삽입/검색이 가능하나, .some().every()를 사용하는 search는 최악의 경우 O(m) (단어 길이)입니다. isValid는 스택을 사용해 O(n) 시간, O(n) 공간입니다. 이 정보를 주석에 넣어주시면 더 좋겠습니다.

  2. 코드 가독성 및 스타일: 변수명은 명확하나, max는 JavaScript 내장 함수와 이름이 겹칠 수 있어 maxAreaVal과 같이 조금 더 구체적으로 바꾸면 좋겠습니다. 또한, WordDictionary의 생성자에서 new Set('')는 빈 세트 생성이지만, 내부에 문자열이 들어가면 문자별로 분리됩니다. 빈 세트는 new Set()으로 하는 게 더 명확합니다.

  3. 개선 제안:

    • WordDictionarysearch는 패턴 내 .을 하나씩 비교하는 방법보다 트리(Trie) 구조를 사용하는 게 더 효율적일 수 있습니다. 하지만 현재 방법도 충분히 이해하기 편하고 간단해서 괜찮습니다.
    • isValid의 괄호 매칭 검증은 현재 방식도 충분하지만, switch문으로 변경하거나, 더 간단한 매핑 객체를 사용하면 가독성이 향상됩니다.
  4. 격려: 전체적으로 깔끔하게 작성하셨고, 다양한 문제를 빠르게 해결하신 모습이 인상적입니다! 앞으로도 다양한 접근법을 시도하면서 효율성을 높이는 연습도 좋을 것 같습니다.

수고 많으셨고, 다음 리뷰도 기대하겠습니다!

Copy link
Contributor

@TonyKim9401 TonyKim9401 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

6주차 문제 풀이 고생하셨습니다.
시간, 공간 복잡도도 함께 분석이 되면 좋을것 같아요!
고생 많으셨어요. 7주차 문제 풀이도 파이팅입니다.

@hozzijeong hozzijeong merged commit 356ae6d into DaleStudy:main Dec 22, 2025
1 check passed
@github-project-automation github-project-automation bot moved this from Solving to Completed in 리트코드 스터디 6기 Dec 22, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

Status: Completed

Development

Successfully merging this pull request may close these issues.

3 participants