코딩 테스트/코드트리

[Novice Mid : 프로그래밍 연습] 정렬 : 객체 정렬 - 키, 몸무게를 기준으로 정렬

셩잇님 2023. 9. 13. 00:32
반응형

 

 

★ "왜?" 라는 질문을 스스로에게 하면서 학습하자.

 

 

0. 문제 풀이 순서

  • 논리적 순서 확정
  • 관련 카테고리 혹은 문제 끌어오기
  • 필요한 자료연산 리스트업
  • 이에 제일 유리한 자료구조 선택
  • 구현

 

1. 설명

 

문제 링크 : https://www.codetree.ai/missions/5/problems/sort-by-height-and-weight/description

 

코드트리 | 코딩테스트 준비를 위한 알고리즘 정석

국가대표가 만든 코딩 공부의 가이드북 코딩 왕초보부터 꿈의 직장 코테 합격까지, 국가대표가 엄선한 커리큘럼으로 준비해보세요.

www.codetree.ai

 

문제 사진 :

 

문제 설명 : 줄 세우기와 같이 클래스를 정렬을 이용하여 푸는 문제이다. 나는 임의로 클래스를 학생이라고 설정하여 주어서 문제를 풀이했다. 클래스 내부에는 이름, 키, 몸무게를 생성 해주고 문제에서 요구하는 조건에 따라 정렬을 진행하여 풀이한다.

 

 


 

 

나의 소스 코드 : 

 

코드 설명 : 키가 큰 학생이 오름차순으로 나오고, 단 키가 동일할 경우 몸무게가 더 큰 학생이 나와야 하므로 위의 소스코드와 같이 정렬을 진행하였다.

 

 

2. 시간

  • 문제 풀이를 위해 설정한 시간 : 5분
  • 실제 풀이 시 걸렸던 시간 : 6분 30초

 

 

3. 질문

  • 시간 복잡도 : 줄 세우기 문제와 같이 단순 for문을 사용하였고, n만큼 반복문을 수행하였기 때문에 O(n)의 시간이 걸린다.
  • 공간 복잡도 : 1개의 string 변수와 2개의 int 변수를 사용하였으므로, 2n + 16의 값을 가진다. 따라서 메모리의 입력 값에 따라 선형적으로 증가하기 떄문에 O(n)의 시간이 걸린다.
  • 어려웠던 부분 : 없다. 

 

 

4. 기타

  • 최초 풀이 : 23.09.13.(수)
  • 재 풀이 : ❌
  • 왜? : ❌

 

 

 

반응형