Skip to content

[yerim01] WEEK 03 solutions#2459

Merged
yerim01 merged 2 commits intoDaleStudy:mainfrom
yerim01:main
Mar 21, 2026
Merged

[yerim01] WEEK 03 solutions#2459
yerim01 merged 2 commits intoDaleStudy:mainfrom
yerim01:main

Conversation

@yerim01
Copy link
Contributor

@yerim01 yerim01 commented Mar 21, 2026

답안 제출 문제

작성자 체크 리스트

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

검토자 체크 리스트

Important

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

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

@yerim01
Copy link
Contributor Author

yerim01 commented Mar 21, 2026

@DaleStudy 리뷰해줘

@dalestudy
Copy link
Contributor

dalestudy bot commented Mar 21, 2026

먼저, 두 문제 모두 깔끔한 구현과 명확한 설명이 돋보입니다! 특히 시간/공간 복잡도에 대한 주석이 잘 달려 있어 이해를 돕고 있습니다. 아래 몇 가지 피드백 드립니다.

  1. 시간/공간 복잡도 명시 및 평가

    • hammingWeight는 현재 시간복잡도 O(log n), 공간복잡도 O(1)으로 적절히 평가하셨습니다.
    • isPalindrome의 경우, 문자열을 새 리스트에 저장하는 과정이 O(n)이고, 이후 양 끝에서 비교하는 과정도 O(n)입니다. 따라서, 시간복잡도 O(n), 공간복잡도 O(n)가 적합합니다. 주석도 잘 반영되어 있습니다.
  2. 개선 방안 제안

    • hammingWeight는 비트 연산자(&)를 활용하는 방법도 고려해보세요. 예를 들어, n &= n - 1은 최하위 1 비트를 제거하는 효과가 있어, 더 빠른 수행이 가능합니다. 이 방법은 시간복잡도 O(k) (k는 1의 개수)로, 최악의 경우 O(log n)와 유사하지만 더 직관적이고 효율적입니다.
    • isPalindrome에서 문자열을 리스트로 만든 후 다시 문자열로 결합하는 대신, 바로 두 포인터 방식을 문자열에 적용하는 것도 좋습니다. 이 경우 추가 공간이 필요 없고, 조금 더 직관적일 수 있습니다. 예를 들면, s 자체를 활용하여 알파벳과 숫자만 필터링하여 바로 체크하는 방식입니다.
  3. 가독성 및 스타일

    • 변수명, 주석 모두 명확하고 깔끔합니다. 특히, 시간/공간 복잡도에 대한 설명이 구체적이고 좋습니다.
    • if ch.isalnum() 뒤에 ch.lower() 호출을 한 줄로 묶거나, 간단한 설명을 더 추가하면 가독성을 높일 수 있습니다.
  4. 격려와 추천

    • 두 구현 모두 이해하기 쉽고 깔끔하여, 실제 인터뷰나 코딩 테스트에서도 좋은 습관입니다! 앞으로도 다양한 방법을 탐구하며 성능 향상을 도모하는 연습을 계속하세요.
    • 특히, 비트 연산자를 활용하는 방식은 익혀두면 많은 문제에 적용 가능하니 참고하세요!

계속해서 좋은 문제 해결과 꾸준한 연습 기대하겠습니다!

@yerim01
Copy link
Contributor Author

yerim01 commented Mar 21, 2026

@DaleStudy 승인

Copy link
Contributor

@dalestudy dalestudy bot left a comment

Choose a reason for hiding this comment

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

승인되었습니다! 👍

@yerim01 yerim01 moved this from In Review to Completed in 리트코드 스터디 7기 Mar 21, 2026
@yerim01 yerim01 merged commit 22d8d13 into DaleStudy:main Mar 21, 2026
3 checks passed
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.

1 participant