그리디 알고리즘과 스프링 기본 설정 방법을 익혔다. 그리고 코딩 테스트에 대한 기초적인 지식과 취업 시 필요한 내용에 관한 간략한 내용도 익혔다.
그리디 알고리즘
- 어떤 문제가 주어지면 단순 무식하게, 탐욕적으로 문제를 푸는 알고리즘
- 현재 상황에서 지금 당장 좋은 것만 고르는 방법
- 그리디 알고리즘을 모든 알고리즘에 적용할 수는 없음.
- 예로, 거스름돈 문제를 그리디 알고리즘으로 해결했던 이유는 가지고 있는 동전 중에서 큰 단위가 항상 작은 단위의 배수이므로 작은 단위의 동전들을 종합해 다른 해가 나올 수 없기 때문.
- 보이듯이 굉장히 전제가 까다로운 편이므로, 문제를 볼 때 바로 유형을 파악하기 어려우면 그리디, 탐욕적인 해결법이 존재하는 지 고민해보자.
- 아니면, 다이나믹 프로그래밍이 될 수 있을 것이다.
스프링
- 환경은 IntelliJ IDEA, Java는 23버전
- https://start.spring.io에서 기본 설정을 한다. 버전은 최신 버전 중에서 가능한 것, Plugin으로는 Spring Web, Thymeleaf를 설치한다.
/src/main/resources/applicatoin.properties
에서 server.port=3000을 하면 localhost:3000으로 포트를 변경할 수 있다.
스프링 부트 라이브러리
- spring-boot-starter-web
- tomcat: 웹서버 톰캣 (내장형
- webmvc: 스프링 웹 MVC
- spring-boot-starter-thymeleaf: 타임리프 템플릿 엔진(view)
- spring-boot-starter
- spring-boot
- spring-core
- spring-boot-starter-logging
- logback, slf4j
- spring-boot
- spring-boot-starter-test
- junit: 테스트 프레임워크
- mockito: Mock 생성 프레임워크
- assertj: 테스트 코드 어시스턴트
- spring-test: 스프링 테스트 통합 지원