Can I do work while waiting?Synchronous I/O요청자가 요청을 보내면 프로세스가 중단된다.요청자는 코드를 더 실행할 수 없다.수신자가 응답을 주면, 요청자 중단이 해제된다.OS의 동기 I/O 예시프로그램이 디스크로부터 읽을 것을 요청한다.프로그램의 메인 스레드가 CPU에서 쫓겨난다. (I/O 하는동안 원래 요청보낸 스레드를 쫓아내서 CPU에서 컨텍스트 스위칭이 일어난다.)// Program starts// Program uses CPU to execute stuffdoWork();// Program reads from disk// Program can't do anything until file loads// 요청이 커널 -> 드라이브 -> 디스크 컨트롤러로 도달readFi..
https://www.acmicpc.net/problem/1043 1043번: 거짓말 지민이는 파티에 가서 이야기 하는 것을 좋아한다. 파티에 갈 때마다, 지민이는 지민이가 가장 좋아하는 이야기를 한다. 지민이는 그 이야기를 말할 때, 있는 그대로 진실로 말하거나 엄청나게 www.acmicpc.net import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.Arrays; import java.util.StringTokenizer; public class Main { static int N, M; static int[] parents; public static void..
https://www.acmicpc.net/problem/1976 1976번: 여행 가자 동혁이는 친구들과 함께 여행을 가려고 한다. 한국에는 도시가 N개 있고 임의의 두 도시 사이에 길이 있을 수도, 없을 수도 있다. 동혁이의 여행 일정이 주어졌을 때, 이 여행 경로가 가능한 것인 www.acmicpc.net 이 문제는 마지막 라인에 주어지는 노드들이 서로 연결되어 있는지를 판별하는 문제이다. 따라서 유니온 파인드 알고리즘으로 해결 가능하다. import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.Arrays; import java.util.StringTokeni..
정적 팩터리 메서드와 생성자는 선택적 매개변수가 많을 때 적절히 대응하기 어렵다는 단점이 있다. 💡 대안 1 : 자바빈즈 패턴 (JavaBeans Pattern) 매개변수가 없는 생성자로 객체를 만든 후, setter 메소드를 호출해 매개변수의 값을 설정한다. public class KongGookSoo { String name; String address; String kindOfBeans; boolean isAlways; int price; // getter, setter.. } KongGookSoo kgs = new KongGookSoo(); kgs.setName("서민준밀밭"); kgs.setAddress("서울시 영등포구"); kgs.setKindOfBeans("대두"); kgs.setIsAlw..
// Boolean 클래스의 valueOf 메서드 public static Boolean valueOf(boolean b) { return b ? Boolean.TRUE : Boolean.FALSE; } 👍 정적 팩터리 메서드가 생성자보다 좋은 장점 1. 이름을 가질 수 있다. 이름만 잘 지으면 반환될 객체의 특성을 쉽게 묘사할 수 있다. 예) BigInteger(int, int, Random) vs BigInteger,probablePrime 후자가 소수인 BigInteger를 반환한다는 의미를 더 잘 설명한다. 2. 호출될 때마다 인스턴스를 새로 생성하지 않아도 된다. (1) 자주 생성될 것 같은 객체는 미리 만들어 놓고 재사용하여 불필요한 객체 생성을 피할 수 있다. (2) 언제 어느 인스턴스를 살..
오라클 instantrip 계정에서 시퀀스를 찾을 수 없다는 에러가 발생했다. oracle.jdbc.OracleDatabaseException: ORA-02289: 시퀀스가 존재하지 않습니다. 원인은 system 계정에 시퀀스를 생성한 후, 다른 계정에 권한을 부여해주지 않았기 때문이다 다음과 같은 쿼리로 권한 부여가 가능하다. grant select, alter on [주는계정].[시퀀스이름] to [받을계정]; create synonym [받을계정].[시퀀스이름] for [주는계정].[시퀀스이름]; commit;

# 사용자 CREATE TABLE user_ ( user_idNUMBERNOT NULL, login_idVARCHAR2(16)NOT NULL, login_pwVARCHAR2(256)NOT NULL, user_nameVARCHAR2(12)NOT NULL, emailVARCHAR2(50)NOT NULL, join_dateTIMESTAMPDEFAULT sysdateNULL, active_statusCHAR(1)DEFAULT 'T'NULL, roleVARCHAR2(30)NULL ); COMMENT ON COLUMN user_.user_id IS '고객 식별 ID (시퀀스)'; COMMENT ON COLUMN user_.login_id IS '고객 로그인ID'; COMMENT ON COLUMN user_.logi..
https://school.programmers.co.kr/learn/courses/30/lessons/148653# 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 🐭 풀이 처음엔 자릿수를 다 더해주면 된다고 생각했습니다. 하지만 문제에 나온 예제 1번 16을 보면, 자릿수를 다 더해주면 7이지만 +1을 4번 누르고, -10을 2번 누르면 총 6번만에 0층에 도달할 수 있습니다. 이 예제에서 문제 풀이에 대한 힌트를 얻을 수 있습니다. 자릿수를 다 더해주는 경우는 먼저 -1을 6번 눌러서 1의 자리를 없애주고 -10을 1번 눌러서 0으로 만드는 과정입니다..
- Total
- Today
- Yesterday
- 유니온파인드
- 빌더패턴
- Sequence
- 시퀀스
- 이진트리
- BAEKJOON
- Java
- 백준1976
- 스레드
- BuilderPattern
- 중위순회
- 전위순회
- 자바
- 이펙티브자바
- deque
- 정적팩터리메서드
- 트리순회
- 생성자
- 여행가자
- 알고리즘
- 백준
- 프로그래머스
- 시퀀스가존재하지않습니다
- effectivejava
- greedy
- 투포인터 #알고리즘
- ORA-02289
- 탐욕법
- 분리집합
- 후위순회
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |