[JAVA] JVM이란?
·
JAVA
Java를 공부하다 보면 꼭 만나게 되는 개념이 JVM (Java Virtual Machine) 입니다. 이 글에서는 JVM이 무엇이고, 어떻게 동작하며, 구성 요소는 어떤 것들이 있는지 쉽게 정리해보겠습니다.📌 JVM이란?JVM(Java Virtual Machine) 은 직역하면 "자바를 실행하기 위한 가상의 컴퓨터"입니다.Java는 다양한 운영체제(OS)에서 동일한 코드로 동작할 수 있는 특징을 가지는데, 그 중심에 JVM이 있습니다.즉, OS에 종속되지 않고 Java 프로그램을 실행하기 위한 중간 매개체 역할을 하는 게 바로 JVM입니다.💡 JVM은 OS 위에서 Java Bytecode를 해석하고 실행하는 가상 머신입니다.🔧 Java 컴파일 과정Java는 소스코드 .java → .class(B..
[코딩테스트] 백준 11653- 소인수분해 [JAVA]
·
코딩테스트
문제 링크https://www.acmicpc.net/problem/11653문제 설명정수 N이 주어졌을 때, 소인수분해하는 프로그램을 작성하시오. 입력첫째 줄에 정수 N (1 ≤ N ≤ 10,000,000)이 주어진다.출력N의 소인수분해 결과를 한 줄에 하나씩 오름차순으로 출력한다. N이 1인 경우 아무것도 출력하지 않는다.예제 입력과 출력예1> 예2> 예3>예4>예5> 코드 ver_1package coding_test;import java.util.Scanner;public class Backjoon11653 { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int num = sc.nextInt(); ..
[코딩테스트] programmers - 올바른 괄호 (알고리즘 고득점 kit) [JAVA]
·
코딩테스트
문제링크https://school.programmers.co.kr/learn/courses/30/lessons/12909 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr문제설명괄호가 바르게 짝지어졌다는 것은 '(' 문자로 열렸으면 반드시 짝지어서 ')' 문자로 닫혀야 한다는 뜻입니다. 예를 들어 "()()" 또는 "(())()" 는 올바른 괄호입니다. ")()(" 또는 "(()(" 는 올바르지 않은 괄호입니다. '(' 또는 ')' 로만 이루어진 문자열 s가 주어졌을 때, 문자열 s가 올바른 괄호이면 true를 return 하고, 올바르지 않은 괄호이면 false를 return 하는 solution 함수를..
[코딩테스트] programmers - 기능 개발 (알고리즘 고득점 kit) [JAVA]
·
코딩테스트
문제링크https://school.programmers.co.kr/learn/courses/30/lessons/42586 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr문제설명프로그래머스 팀에서는 기능 개선 작업을 수행 중입니다. 각 기능은 진도가 100%일 때 서비스에 반영할 수 있습니다. 또, 각 기능의 개발속도는 모두 다르기 때문에 뒤에 있는 기능이 앞에 있는 기능보다 먼저 개발될 수 있고, 이때 뒤에 있는 기능은 앞에 있는 기능이 배포될 때 함께 배포됩니다. 먼저 배포되어야 하는 순서대로 작업의 진도가 적힌 정수 배열 progresses와 각 작업의 개발 속도가 적힌 정수 배열 speeds가 주어..
[코딩테스트] programmers - 같은 숫자는 싫어 (알고리즘 고득점 kit) [JAVA]
·
코딩테스트
문제링크https://school.programmers.co.kr/learn/courses/30/lessons/12906 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr문제설명배열 arr가 주어집니다. 배열 arr의 각 원소는 숫자 0부터 9까지로 이루어져 있습니다. 이때, 배열 arr에서 연속적으로 나타나는 숫자는 하나만 남기고 전부 제거하려고 합니다. 단, 제거된 후 남은 수들을 반환할 때는 배열 arr의 원소들의 순서를 유지해야 합니다. 예를 들면, arr = [1, 1, 3, 3, 0, 1, 1] 이면 [1, 3, 0, 1] 을 return 합니다. arr = [4, 4, 4, 3, 3] 이면 [..
[데이터베이스] Redis란?
·
데이터베이스
1. Redis란 무엇인가?Redis(REmote DIctionary Server)는 오픈 소스, 인메모리 데이터 저장소로 주로 캐싱, 세션 저장소, 메시지 큐 및 실시간 데이터 분석 등에 사용됩니다. 일반적인 RDBMS와 달리 데이터를 메모리에 저장하여 매우 빠른 속도로 읽고 쓸 수 있는 것이 가장 큰 특징입니다.Redis의 주요 특징인메모리 데이터 저장소: 모든 데이터를 RAM에 저장하여 빠른 데이터 접근이 가능Key-Value 구조: 다양한 데이터 타입(String, List, Set, Hash 등) 지원퍼시스턴스(Persistence) 지원: AOF(Append Only File) 및 RDB(Snapshot) 방식으로 데이터를 디스크에 저장 가능분산 처리 지원: 클러스터 모드 및 복제 기능 제공다..
[JAVA] 코딩테스트 필수 문법 정리
·
JAVA
코딩테스트에서 자주 사용하는 Java 문법을 정리했습니다. 자주 쓰이는 메서드와 자료구조 활용법을 쉽게 이해할 수 있도록 설명합니다.1. 문자열 (String) 문자열 기본 메서드String str = "apple";str.length(); // 문자열 길이 반환 -> 5str.isEmpty(); // 빈 문자열 여부 확인 -> falsestr.charAt(0); // 특정 위치 문자 반환 -> 'a'str.indexOf("p"); // 특정 문자 첫 등장 위치 -> 1str.lastIndexOf("p"); // 특정 문자 마지막 등장 위치 -> 2 문자열 자르기 & 치환str.substring(1, 3); // "pp" (인덱스 1 이상 3 미만 부분 반환)str...
[코딩테스트] programmers - 완주하지 못한 선수(알고리즘 고득점 kit) [JAVA]
·
코딩테스트
문제링크https://school.programmers.co.kr/learn/courses/30/lessons/42576 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr문제설명수많은 마라톤 선수들이 마라톤에 참여하였습니다. 단 한 명의 선수를 제외하고는 모든 선수가 마라톤을 완주하였습니다. 마라톤에 참여한 선수들의 이름이 담긴 배열 participant와 완주한 선수들의 이름이 담긴 배열 completion이 주어질 때, 완주하지 못한 선수의 이름을 return 하도록 solution 함수를 작성해주세요.제한사항마라톤 경기에 참여한 선수의 수는 1명 이상 100,000명 이하입니다.completion의 ..