Index |
1. 코딩 테스트 |
2. 환경설정 |
3. 기본 문법 |
4. 자료형 && 자료구조 |
5. 주의할 점 |
6. 참고자료 |
1. 코딩 테스트
코딩 테스트
- 기업/기관에서 직원이나 연수생을 선발하기 위한 목적으로 시행 되는 시험
- 문제 해결 역량을 평가
복잡도(Complexity)
- 시간 복잡도: 특정한 크기의 입력에 대하여 알고리즘의 수행 시간 분석
- 공간 복잡도: 특정한 크기의 입력에 대하여 알고리즘의 메모리 사용량 분석
- 연산 횟수가 5억이상인 경우 Clang은 1~3초, Python은 5~15초
문제 해결 과정
1. 지문 읽기 및 요구사항 분석
2. 문제 해결 아이디어 찾기
3. 소스코드 설계 및 코딩
2. 환경설정
VSCode
- https://code.visualstudio.com/download
Python 3.9
- https://www.python.org/downloads/
3. 기본 문법
변수
연산자
- 사칙 연산자: +, -,*, /, //, **
- 비교 연산자: <, <=, >, >=, ==, !=
- 논리 연산자: and, or, not
- 기타 연산자: x in 리스트, x not in 문자열
입출력
- print(str, sep=' ', end='\n')
- input(str): 입력을 문자열로 처리
- sys.stdin.readline().rstrip(): 입력시 줄바꿈 처리를 위해 rstrip() 사용
제어문
- 조건문: if ~ elif ~ else
- 반복문: while, for ... in (iterable 객체), range(start,end,step), continue, break
함수와 람다식
- 함수: def 함수명(매개변수), return, global
- 람다식: lambda 매개변수: 반환값
4. 자료형 && 자료구조
자료형
- 데이터의 형태
- 정수형, 실수형, 복소수형, 문자열, 리스트, 튜플, 딕셔러니, 셋
정수형(Integer)
- 정수를 다루는 자료형
- 0, 양의 정수, 음의 정수
실수형(Real Number)
- 소수점 아래의 데이터를 포함하는 수 자료형
- 변수에 소수점을 붙인 수를 대입하면 실수형 변수로 처리
- 지수 표현 방식(유효숫자e지수)
- 실수 정보의 경우 정확도에 한계가 있어 오차 발생 주의
- round()함수로 반올림 처리
문자열
- 초기화할 때 ", ' 사용
- 문자열은 특정 인덱스의 값을 변경할 수 없음
- f-string: f"context{var}"
List
- 여러 개의 데이터를 연속적으로 담아 처리하기 위해 사용하는 자료구조
Tuple
- 한 번 선언된 값을 변경할 수 없음
- 리스트에 비해 상대적으로 공간 효율적
- 서로 다른 성질으리 데이터를 묶어서 관리시 사용, 해싱의 키 값으로 사용할 때
Dictionary
- Key와 Value의 쌍을 데이터로 가지는 자료형
- 키는 변경 불가능한 자료형을 사용
- 데이터의 조회 및 수정에 있어서 O(1)의 시간에 처리
- 주요 메서드: keys(), values(), item()
Set
- 중복을 허용하지 않음, 순서가 없음
- 데이터의 조회 및 수정에 있어서 O(1)의 시간에 처리
- 연산: 합집합(|), 교집합(&), 차집합(-)
- 주요 메서드: add, update, remove
5. 주의할 점
시간 측정
import time
start = time.time()
# 소스코드
end = time.time()
prinit("time: ", end - start)
리스트 초기화
- arr = [[0] *m]*n 사용 금지, 전체 리스트 안에 포함된 각 리스트가 모두 같은 객체로 인식
참고 자료
[Video: 동빈나의 이코테 2021(코딩 테스트 출제 경향 분석 및 파이썬 문법 부수기)] https://www.youtube.com/watch?v=m-9pAwq1o3w&list=PLRx0vPvlEmdAghTr5mXQxGpHjWqSz0dgC&index=3 |
[Docs: Python3.8] https://devdocs.programmers.co.kr/python~3.8/ |
'코딩테스트 > 이것이 코딩테스트다' 카테고리의 다른 글
[알고리즘] 6. 이진 탐색 (0) | 2023.10.05 |
---|---|
[알고리즘] 5. 동적 계획법 (0) | 2023.10.05 |
[알고리즘] 4. 그리디 && 구현 (0) | 2023.10.05 |
[알고리즘] 3. 정렬 (0) | 2023.10.05 |
[알고리즘] 2. 코딩테스트를 위한 파이썬 라이브러리 (0) | 2023.10.05 |