-
Notifications
You must be signed in to change notification settings - Fork 126
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[친환경사과] Week 3 #794
[친환경사과] Week 3 #794
Conversation
* 공간 복잡도: O(1) | ||
* -> 결과를 저장하는 result, 배열의 index를 가리키는 indices는 두 개의 값을 담기 때문에 O(1) | ||
*/ | ||
fun twoSum(nums: IntArray, target: Int): IntArray { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
배열 대신에 key, value 값으로 메모이제이션을 활용해서 시간 복잡도를 줄이는 방법도 고민해보면 좋을 거 같습니다~
입력 nums 파라미터를 한번만 순회하면서 요소값을 key로, 요소의 인덱스를 value로 저장할 수 있지 않을까요?
result = (result shl 1) or (input and 1) | ||
// 입력 비트를 오른쪽으로 이동 | ||
input = input shr 1 | ||
} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
코틀린에는 shl, shr을 통해 비트이동이 가능하네요, 좋은 지식 하나 알고 갑니다^^
val eachBitValue = 2.0.pow(i).toInt() | ||
if (fullBitString[i] == '0') { | ||
continue | ||
} else { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
26라인의 코드는 if 조건을 타지 않는 경우에 모두 실행되기 때문에,
가독성 측면에서 굳이 else 범위를 정의하지 않아도 되보입니다
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
if (fullBitString[i] == '1') result += eachBitValue
로 가독성 높게 구현할 수 있겠네요! 감사합니다.!
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
연말에 문제 풀이하느라 고생하셨습니다. 조금 더 고민해보셔서 최적화도 시도해보시면 좋을 것 같습니다.
PR approve는 해두겠습니다.
답안 제출 문제
체크 리스트
In Review
로 설정해주세요.