일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
Tags
- spring
- MariaDB
- 백준
- IntelliJ
- 코딩테스트
- 취준생
- SpringBoot
- jdk11
- gradle
- 프로젝트
- 팀프로젝트
- Controller
- AWS
- Project
- 공유DB
- 디자인패턴
- coding test
- React
- javascript
- 자취
- ps
- JDK
- JPA
- 코테
- 입출력
- spring boot
- 자바
- Java
- MVC
- 스프링
Archives
- Today
- Total
Tech Collection
[Day 1] 문제 해결 시작하기 본문
728x90
반응형
문제 푸는 순서
1. 문제 읽고 이해
2. 문제를 익숙한 용어로 재정의 (추상화)
3. 어떻게 해결할 지 계획 : 사용할 알고리즘, 자료구조 선택
4. 계획 검증
5. 프로그램 구현
6. 복기
가능한 많은 문제를 푸는 것이 중요하다.
직관적이며 체계적인 접근이 필요 : 꼬리질문 계속 하기
자주하는 실수가 무엇인지 체크하기
좋은 코드?
- 간결한 코드 (전역변수)
- 적극적인 코드 재사용 (모듈화)
- 표준 라이브러리 사용 (문자열, 동적 배열, 스택, 큐, 리스트, 사전 / 정렬)
- 항상 같은 형태로 코드 작성
- 네이밍 컨벤션 지키기 (변수명, 함수명)
- 자료의 정규화 후 저장 : 프로그램이 자료를 입력받거나 계산하자마자 곧장 이루어져야 함
- 코드와 데이터의 분리
알아두면 좋을 것
- 입출력 방식들의 속도
- 연산자 우선순위
- 스택 허용량
디버깅 & 테스팅
- 작은 입력에 대한 실행 확인
- assertion
- 중간 과정 결과 출력
- 스캐폴딩 (다른 코드를 개발할 때 뼈대를 잡기 위해 임시로 사용하는 코드)
728x90
반응형
'PS > 알고리즘 문제 해결 전략' 카테고리의 다른 글
[Day3-5] 알고리즘 설계 패러다임 (0) | 2021.04.06 |
---|---|
[Day 2] 알고리즘 분석 (시간복잡도) (0) | 2021.04.06 |
[Day 0] 계획 (0) | 2021.04.01 |