코딩 테스트 합격자 되기 Part1
00 코딩 테스트를 준비하기 전에
나만의 테스트 케이스를 추가하는 건 좋은 알고리즘을 생각할 때 도움이 된다
문제 분석한 후 여러 예외 상황을 확인할 수 있도록 나만의 테스트 케이스를 추가하면 도움이 됨
첫 번째, 기록하라
문제를 못 풀더라도 어디까지 생각했는지 기록
01 코딩 테스트 효율적으로 준비하기
01-2 문제 분석 연습하기
첫 번째, 문제를 쪼개서 분석하라
두 번째, 제약 사항을 파악하고 테스트 케이스를 추가하라
세 번째, 입력값을 분석하라
네 번째, 그리디하게 접근할 때는 근거를 명확히 해라
그리디 : 현재 상황에서 가장 유리해 보이는 선택을 하는 것
다섯 번째, 데이터 흐름이나 구성을 파악하라
01-3 의사 코드로 설계하는 연습하기
원칙1 : 프로그래밍 언어로 작성하면 안 됨
원칙2 : 일반인도 이해할 수 있는 자연어로 작성해야 함
원칙3 : 일정한 형식이 없음(자유롭게 작성)
원칙4 : 세부 구현이 아닌 동작 중심으로 작성하라
ex) 국어, 영어, 수학 점수를 입력받는다. (O)
크기가 256바이트인 문자열 배열을 3개 선언해서 표준 입력으로 국어, 영어, 수학 점수를 입력받는다. (X)
원칙5 : 문제 해결 순서로 작성하라
ex) 1. 영어 성적 입력
2. 영어 성적이 60점을 넘는지 확인(분기)
2-1 60점 이상이면 통과
2-2 60점 미만이면 실패
02 프로그래머스 완벽 활용 가이드
02-1 프로그래머스는 어떤 곳인가요?
02-2 프로그래머스 활용 가이드
프로그래머스 살펴보기
문제 풀이 과정 살펴보기
03 알고리즘의 효율 분석
03-1 시간 복잡도란?
1차원 배열 검색하기
알고리즘 수행 시간을 측정하는 방법
최악의 경우 시간 복잡도를 표현하는 빅오 표기법
시간 복잡도를 코딩 테스트에 활용하는 방법
03-2 시간 복잡도 계산해보기
별 찍기 문제
박테리아 수명 문제
04 코딩 테스트 필수 문법
04-1 프리미티브 타입과 레퍼런스 타입
정수형
부동소수형
04-2 컬렉션 프레임워크
배열
리스트
해시맵
문자열
04-3 메서드
메서드 정의
메서드 호출
람다식
04-4 코딩 테스트 코드 구현 노하우
조기 반환
보호 구문
제네릭
댓글
댓글 쓰기