
CPU 스케줄링은 언제 어떤 프로세스에 CPU를 할당할지 결정하는 작업을 의미한다. 이 알고리즘은 CPU 이용률은 높게, 주어진 시간에 많은 일을 하게, 준비 큐에 있는 프로세스는 적게, 응답시간은 짧게 설정하는 것을 목표로 한다.입출력 작업이 많은 프로세스의 우선순위

프로세스와 스레드는 운영체제에서 프로그램이 실행될 때 사용되는 기본적인 단위이다.웹 서버나 애플리케이션에서 동시에 여러 작업을 처리하려면 프로세스와 스레드에 대한 이해가 필요하다. 두 개념은 자원관리, 성능 최적화, 동시성 처리에 직접적인 영향을 주지만 관리와 자원사용

[Silver II] DNA 비밀번호 - 12891 문제 링크 문제 설명 평소에 문자열을 가지고 노는 것을 좋아하는 민호는 DNA 문자열을 알게 되었다. DNA 문자열은 모든 문자열에 등장하는 문자가 {‘A’, ‘C’, ‘G’, ‘T’} 인 문자열을 말한다. 예를

문제 링크 N개의 수 중에서 어떤 수가 다른 수 두 개의 합을 나타내는 갯수를 찾는것이다.이것도 정렬 + 투포인트 알고리즘을 사용한다.단, 정렬된 데이터에서 자기자신을 좋은 수 만들기에 포함하면 안되므로 예외처리해줘야한다!서로 다른 두수의 값인지 체크 후 서로 다른 값

문제 링크 투포인터 + 배열 정렬을 쓰는 문제이다.각각의 재료는 한번쓰면 없어진다고 생각해야한다.i의 값을 1 증가시킨다. -> 더 큰 값을 찾아야하므로!count값을 1 증가시키고, i는 1증가, j는 1 감소 시킨다.j의 값을 1 감소시킨다. -> 더 작은 값을 찾

[Silver V] 수들의 합 5 - 2018 문제 링크 문제 설명 어떠한 자연수 N은, 몇 개의 연속된 자연수의 합으로 나타낼 수 있다. 당신은 어떤 자연수 N(1 ≤ N ≤ 10,000,000)에 대해서, 이 N을 몇 개의 연속된 자연수의 합으로 나타내는 가지

문제 링크 처음에 문제 이해를 못해서 많이 애먹었다...첫번째 줄에 입력되는 첫번째 숫자N은 2번째 줄의 숫자의 갯수고, 그 다음 입력되는 M은 나누어 떨어지는 수(나눌 수)를 의미한다.그리고 합이 M으로 나누어 떨어지는 (i,j)쌍의 개수를 구하라고 하는데, 예시의

문제 링크 이 문제도 1차원 구간 합배열과 마찬가지로 질의마다 합을 구하면 시간초과로 통과를 못한다.구간 합배열을 2차원으로도 어떻게 작성하는지 알아보자.AX는 원본 배열을 의미하며,DX는 원본 배열 A의 (0,0)부터 (X,Y)까지의 사각형 영역 안에 있는 수의 합

문제 링크 이 문제는 각 인덱스마다 값을 더하는 건데, 여기서 구간마다 합을 매번 계산하면 모든 계산을 시간 안에 끝낼 수 없다. 이럴 때 구간합을 이용하는 것이다!Si = Si-1 + Ai예를 들어 A3까지의 합배열을 구하는 것이라면S3 = S2 + A3 → S3 =

\[백준] 괄호 - 9012push() : 스택에 데이터를 추가하는 메서드pop() : 스택에 들어있는 데이터를 삭제하는 메서드peek() : 데이터는 삭제하지 않고 스택 맨 위에 있는 값을 확인하는 메서드size() : 현재 스택에 저장되어 있는 요소의 개수를 알려주

Stream API란 Java 8에서 도입되어 데이터 컬렉션을 함수형 스타일로 처리할 수 있게 하는 기능이다. 이는 데이터를 추상화하고 처리하는 다양한 연산을 수행할 수 있게 해준다. 특히, 데이터 소스에 대한 계산 로직을 고수준에서 간결하게 표현할 수 있어, 코드의

가비지 컬렉션은 자바의 메모리 관리 방법 중 하나로, JVM의 Heap 영역에서 동적으로 할당했던 메모리 중 필요 없게 된(사용하지 않는) 메모리 객체를 모아 주기적으로 제거하는 프로세스를 뜻한다.C/C++은 이러한 가비지 컬렉션이 없어 프로그래머가 수동으로 메모리 할

이전에 JVM, JRE, JDK의 개념에 대해서 알아보는 시간을 가졌다.이번엔 좀 더 자세히 JVM의 구조에 대해서 알아보도록 하자. JDK, JRE, JVM의 개념 🧐JVM이 뭐였지? JVM은 자바 가상 머신으로, 자바 바이트 코드를 각 운영체제에 맞는 기계로
먼저 스택을 정의해주고, 입력받을 문자열 개수만큼 for문을 돌린다.for문안에 if문을 이용해서 명령어를 구분하고, 그에 맞게 명령어를 처리한다.특히 push는 push 5와 같이 push 이후에 정수로 스택에 넣을 값을 지정해주기 때문에, startsWith() 메

자바는 3년정도의 텀으로 LTS(Long Term Support) 릴리스가 제공된다.LTS란 Long Term Support의 약자로 장기 지원 버전을 의미한다. 자바의 LTS 버전은 특정 기간 동안 안정적인 지원과 업데이트를 제공받을 수 있다. 일반적으로 3년마다 출