Goal1. 데몬 스레드와 사용자 스레드의 차이점에 대해 이해한다.2. 데몬 스레드의 생성 방법에 대해 이해한다.#1 데몬 스레드 & 사용자 스레드자바에서 스레드는 사용자 스레드와 데몬 스레드로 구분한다. 사용자 스레드는 Thread Class 를 상속받거나, Runnable 인터페이스를 구현하는 방식으로 생성한다. [Java] 쓰레드 생성 방법 Thread & Runnable Interface✨Goal1. Thread Class를 상속받아 스레드를 생성하는 방법에 대해 숙지한다.2. Runnable Interface를 구현하여 스레드를 생성하는 방법에 대해 숙지한다. 자바에서 스레드를 생성하는 방법은 Thread 클래스novlog.tistory.com 자바 프로그램은 현재 프로세스 내부에 동작하고 ..
✨Goal1. Thread Class를 상속받아 스레드를 생성하는 방법에 대해 숙지한다.2. Runnable Interface를 구현하여 스레드를 생성하는 방법에 대해 숙지한다. 자바에서 스레드를 생성하는 방법은 Thread 클래스를 상속받는 방식과 Runnable 인터페이스를 구현하는 방식으로 나뉜다. #1 extends ThreadThread 클래스를 상속받아 스레드를 생성한다. * Thread.currentThread().getName() - 현재 실행중인 스레드의 이름을 반환한다.run() 메서드 내부에 스레드가 수행할 동작을 명시하며 외부에서 start() 메서드를 호출하면 스레드 내부의 run() 메서드가 호출된다. public class MyThread extends Thread{ @..
Goal - 프로그램과 프로세스의 차이에 대해서 이해한다.- 하드웨어 관점 스레드와 소프트웨어 관점 스레드의 차이에 대해서 이해한다. - 프로세스와 스레드의 차이점에 대해서 이해한다.#1.1 프로그램프로그램 [Program] 이란 "컴퓨터가 일련의 작업을 처리하기 위한 계획서" 한 마디로 그냥 코드 덩어리이다.우리가 일상에서 사용하는 카카오톡, 디스코드, 워드 등 모두 프로그램의 일종이다. 하지만 프로그램은 사용자가 실행하기 이전에는 그저 디스크에 존재하는 코드의 집합일 뿐이다. #1.2 프로세스이러한 프로그램 코드 덩어리를 사용자가 실제로 실행하면 프로세스가 된다. 프로세스는 실행중인 프로그램 상태를 뜻하는 용어이다. 프로그램이 실행되기 위해선 2가지 단계를 거쳐야만 한다. 1. RAM 메모리 적재..
https://www.acmicpc.net/problem/11723 #문제접근문제를 제출한 뒤 알고리즘 분류를 보니 "비트 마스킹" 알고리즘을 사용해야 하는 문제였던 것 같다.시간제한이 1.5초인데 반해 연산의 수는 300만 개로 매우 많다.하지만 아직 비트 마스킹 알고리즘에 대해 공부하지 않았기에 set 자료구조를 사용해 문제를 풀이했다.set 자료구조를 사용해 문제를 풀이하기 위해선 가능한 모든 시간 최적화 방안을 도입해야만 했다. set 자료구조 중에 hash table로 구현된 set 을 선택하였다.hash table 은 삽입, 삭제 연산이 O(1) 만에 이루어지기에 다른 set 자료구조에 비해서 효율적이다.물론 문제 출제자가 의도적으로 최악의 해시 충돌을 강제하는 테스트케이스를 다량으로 추가..
https://www.acmicpc.net/problem/9375 #풀이 * Map 자료구조와 조합론을 사용해 풀이하였다. 각 테스트 케이스에서 n개의 의상 이름과 의상 종류가 공백으로 구분되어 주어진다. 이 때 같은 종류의 의상은 하나만 입을 수 있으며, 같은 이름을 가진 의상은 존재하지 않는다. 즉 다음과 같이 테스트 케이스가 주어졌다고 가정 시 hat headgearsunglasses eyewearturban headgear의상 종류를 기준으로 케이스를 분류하면 다음과 같다. {headgear : hat, turban} , {eyewear : sunglasses} 이제 주어진 의상을 가지고 구성할 수 있는 옷의 조합을 구하면 된다.문제에서 핵심 조건은 다음과 같다. 1. 한 번 입었던 옷들의 ..