Java 8, 11, 17
·
BackEnd/JAVA 공부
JAVA 8, 11, 17 코딩테스트를 보면 java 8 이상이라는 말이 많다. 프로젝트를 할 때도 java8, 11, 17을 사용하는 경우가 많습니다. 자바에는 여러 버전이 있지만 그중 8, 11, 17을 제일 많이 사용합니다. 왜냐하면 이 3개의 버전이 LTS(Long Term Support)이기 때문입니다. LTS란 이 버즌은 출시 이후 8년간 보안 업데이트와 버그 수정을 지원해 준다는 뜻입니다. java 8 : 2030년 12월 java11 : 2026년 9월 java17 : 2029년 9월 이레서 java8 대신 사용하는 것이 java11이 아닌 java17입니다. 자바 8 (Java 8) 32bit를 지원하는 마지막 공식 Java 버전 오라클이 자바 인수 후 출시한 첫 번째 LTS 버전 Ora..
JVM, JRE, JDK에 대해서
·
BackEnd/JAVA 공부
자바 프로그래밍은 크로스 플랫폼을 지원하기 위해 자바 가상 머신(JVM), 자바 실행 환경(JRE), 자바 개발 도구(JDK) 세 가지 중요한 구성 요소를 갖추고 있습니다. 크로스 플랫폼 다양한 운영체제나 하드웨어 환경에서 동작할 수 있는 소프트웨어나 기술을 의미합니다. 이는 하나의 소프트웨어가 여러 플랫폼에서 동일한 기능과 동작을 제공할 수 있음을 의미합니다. 전통적으로 각 운영체제는 자체적인 시스템 구조와 API를 가지고 있기 때문에, 한 운영체제에서 작성된 소프트웨어가 다른 운영체제에서 직접 실행되지 않는 경우가 많았습니다. 이러한 특성 때문에 개발자들은 여러 플랫폼을 지원하기 위해 각각의 운영체제에 맞게 별도의 코드를 작성해야 했습니다. 크로스 플랫폼 접근 방식은 이러한 문제를 해결하기 위해 등장..
연속 펄스 부분 수열의 합 (프로그래머) JAVA
·
BackEnd/알고리즘 공부
https://school.programmers.co.kr/learn/courses/30/lessons/161988 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 설명 이 문제는 부분 수열의 최대 합을 구하는 문제와 엄청 유사합니다. 다른 점은 펄스 수열을 곱한 부분 수열의 최대 합을 구하는 것입니다. 문제에 대한 아이디어 부분 수열의 합을 구하는 방법은 DFS를 통해 모든 경우를 조사해서 최대 합을 찾는 방법이 존재합니다. 하지만 이 문제에서는 최대 500000개 이므로 DFS로 탐색하면 시간 초과가 나올 것입니다. 그러므로 O(n) 안에 풀어야 ..
가장 큰 수 (프로그래머스) JAVA
·
BackEnd/알고리즘 공부
문제 설명 https://school.programmers.co.kr/learn/courses/30/lessons/42746 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr int 배열이 주어지면 각 숫자를 적절하게 조합해 제일 큰 숫자를 만들면 됩니다. 문제에 대한 아이디어 주어진 int 배열을 적절한 조건에 맞게 정렬을 하면 될 것 같습니다. 문제는 2번 예시처럼 3, 30, 34를 어떻게 정렬할 것 인가 입니다. 둘 다 맨 앞자리는 똑같지만 뒤의 자리와 합한 숫자의 크기를 각각 비교해봐야 합니다!! 이렇게 비교하면 조건이 굉장히 많이 필요할 것 같습니..
불량 사용자 (프로그래머스) JAVA
·
BackEnd/알고리즘 공부
https://school.programmers.co.kr/learn/courses/30/lessons/64064 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 설명 fr*d*과 일치하는 것은 frodo, crodo abc1**과 일치하는 것은 abc123 그러므로 조합은 frodo abc123, crodo abc123 2개입니다!! 문제에 대한 아이디어 배열의 크기는 1이상 8이하 입니다. banned_id도 이보다 작기때문에 완전 탐색으로 가능할 것 같습니다. banned_id와 일치하는 user_id를 찾습니다. 각각 user_id를 모든 조합..
쿼드압축 후 개수 세기(프로그래머스) JAVA
·
BackEnd/알고리즘 공부
https://school.programmers.co.kr/learn/courses/30/lessons/68936 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 설명 이렇게 첫 번째 영역이 주어지면 쿼드 트리와 같은 방식으로 압축하는 것 입니다. 결국 0의 갯수는 4개, 1의 갯수는 9개 입니다. 문제 해결 방법 재귀를 사용해서 풀어야 하는 문제입니다. 똑같은 공간으로 계속 나누므로 적절하게 점화시막만 잘 만들면 쉽게 풀 수 있을 것 같습니다. 이 문제는 정사각형으로 계속해서 분할하면서 정사각형 안이 모두 0이거나 1이면 합치는 형식입니다. (off..