전체 글

전체 글

    자바 프로젝트 생성 - 인프런 김영한님 강의 요약 01

    - Start.spring.io 에 접속 - 과거에는 maven을 많이 사용하였지만 요즘은 Gradle을 많이 쓴다. - maven이나 gradle 모두 라이브러리 관리하는 도구라고 보면 된다. - Language 설정은 자바로 한다. - 다음으로 버전을 선택해줘야 하는데, Snapshot은 아직 만들고 있는 것들이다. - M1은 아직 정식으로 출시된 버전이 아닌 것을 의미한다. - 숫자 뒤에 영어가 안 붙은 최신 버전을 선택하면 된다. - 다음으로 프로젝트 메타를 설정해줘야 한다. - group에는 보통 기업 도메인명을 적어준다고 한다. - Artiface는 빌드되서 나오는 결과물이다. * 다음으로 디펜던시를 설정해줘야 한다. 이 부분이 중요하다. - 어떤 라이브러리를 쓸것인지 결정해주는 과정이라 보면..

    알고리즘 기초 - 수학1

    - 골드바흐의 추측 -> 2보다 큰 모든 짝수는 두 소수의 합으로 표현이 가능하다. * 아직 증명 되지는 않았지만 10^18 이하에서는 참인것으로 증명 되어있다. 백만 이하의 짝수중 임의의 숫자 N = a+b(a,b는 소수)를 만족하는지 검증하는 문제. 에라토스테네스의 체를 이용하여 Check[N-b]가 false인지 판별하면 된다. *N-b가 소수이면 a는 자동으로 소수가 되기 때문이다. - 팩토리얼 N! = 1 x 2 x 3 .... x N ex) 10! = 3628800 * 팩토리얼 0의 갯수문제 임의의 수 N!에서 0이 몇 개 인지 알아내는 문제. ex) 10! = 3628800 -> 0이 2개. c++ 또는 java에서 이를 실제로 계산하여 count 하면 시간이 엄청 오래걸리게 된다. -> 소..

    Baekjoon - 10866번

    - 문제 - Dequq을 활용하여 구현하는 문제이다. Buffer을 통하여 명령 수를 입력 받고 if문을 통하여 조건 별로 Dequq 인터페이스에 내재되어있는 메소드를 활용하면 되는 간단한 문제이다. - 그런데 출력쪽에서 문제가 생겼다. - 출력 조건이 명령이 주어질 때마다, 한줄에 하나씩 출력해야 한다. * 다시 말해, push_back 1과 push_front 2를 입력한 다음에 3번째 명령어인 front를 입력하면 바로 2가 출력되어야 하고 back을 입력하면 1이 바로 출력되어야 한다는 뜻이다. - 여태 껏 풀었던 문제는 모든 명령어를 입력한다음 한번에 출력이 되는 방식이었기 때문에 이 부분에서 헤매었다. - 처음 작성한 코드는 다음과 같다. package _10866_Dequq; import j..

    Deque(덱)

    - Double Ended Queue 의 줄임말 - Queue의 양쪽으로 엘리먼트의 삽입과 삭제를 수행 할 수 있는 자료구조 1. 한쪽으로 입력 가능한 덱을 스크롤(scroll), 한쪽으로만 출력 가능한 덱을 셸프(shelf)라고 한다. 2. 자바에서 덱은 인터페이스로 구현되어 있다. 이를 구현한 ArrayDeque, LinkedBlockingDeque, ConcurrentLinkedDeque, LinkedList 등의 클래스가 존재한다. - Dequq의 인터페이스 메소드 - 대표적인 Dequq 구현 방법