작성
·
993
1
MeetingRoom문제의 경우 Interval 클래스를 만들어서 사용합니다.
그런데 사실 start, end 두개의 정수만 인식하면 되므로 2차원배열로 해도 되지요
혹은 List에 배열을 넣어도되고 등등
궁금한것이,
가독성 및 코드관리 측면에서는 당연히 Interval클래스를 만드는것이 더 좋지만
왠지 심리적으로 코딩테스트에서는 가급적이면 기본 api위주로 쓰는게 더 좋은점수를 받을것같고
List를 쓰는것보단 괜찮다면 배열을 쓰는게 더 좋은 점수를 받을것같은
전혀 근거없는 생각에 사로잡혀있습니다
실제 코테 채점시에 코드가독성, 효율성을 더 높이기 위한 별도 클래스 생성이
점수에 전혀 영향이없을까요?
(예외적으로 TreeNode같은건 구조상 단순대체가 안되므로 당연히 클래스로만들어써야할거라 생각하고는있습니다)
답변 2
0
0
2020. 11. 04. 09:31
안녕하세요?
지금 질문주신 내용이 코딩문제를 풀때 별도의 class를 어떻게 이용하는지 질문 주신걸로 이해하겠습니다.
말씀하신거처럼 ListNode클래스 , TreeNode클래스는 대표적인거 이기때문에 그냥 많이 쓰입니다.
그냥 외워야 하는 부분입니다. (당연히 그런 형태로 나오기 때문에..)
하지만 MeetingRoom에서 interval클래스를 좀 애매해서 변형될수 있는 부분이고 실제로 변형 되서 물어봅니다.
Interval 클래스를 변형해서 , 이차원배열로 준다든지 변형하기도 합니다.
질문주신것처럼. 클래스형태, 2차원배열 형태 그렇게 변형됩니다.
1)가독성 및 코드관리 측면에서는 당연히 Interval클래스를 만드는것이 더 좋지만
왠지 심리적으로 코딩테스트에서는 가급적이면 기본 api위주로 쓰는게 더 좋은점수를 받을것같고
=> 코딩문제에서 특별히 별도의 클래스를 주지 않았다면 , 기본 데이타 구조에 담으셔도 되고
따로 클래스로 만들어서 거기다가 넣어도 됩니다. 이건 뭐 개인연습양 본인이 익숙하다면 시도해보시죠
2)List를 쓰는것보단 괜찮다면 배열을 쓰는게 더 좋은 점수를 받을것같은
전혀 근거없는 생각에 사로잡혀있습니다
=> list , 배열에 대한 제한이 없습니다. 그냥 답만 나오면되죠
하지만 list, 배열에대해서 정확히 특히 2차원배열은 담다가 헷갈릴수 있으니 충분히 연습하셔야 됩니다.
3) 실제 코테 채점시에 코드가독성, 효율성을 더 높이기 위한 별도 클래스 생성이
점수에 전혀 영향이없을까요?
=> 가독성에 대해서 점수를 줄거 같습니다. 효율성은 결국 time complexity 이겠죠..
문제는 빨리 제시간에 풀어야 그 고민도 할 수 있을듯합니다.
수고하세요~