일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 29 |
30 | 31 |
- hash table
- simulation
- Method
- database
- 자바
- SQL
- Number Theory
- geometry
- 코테
- 파이썬
- 코딩테스트
- Stack
- Matrix
- dynamic programming
- sorting
- Data Structure
- Class
- implement
- greedy
- Binary Search
- string
- bit manipulation
- 구현
- Binary Tree
- java
- Math
- array
- Counting
- Tree
- two pointers
- Today
- Total
목록자바 (584)
코린이의 소소한 공부노트
1. Input 1) 이메일 주소가 담겨있는 문자열 배열 emails 2. Output 1) 다음 규칙을 적용했을 때, 중복을 제외한 이메일 주소의 개수 2) 규칙 - @을 기준으로 앞부분은 local name, 뒷부분은 domain name이다. - local name에 점(‘.’)이 있다면 무시된다. - local name에 플러스(‘+’)가 있다면 플러스 뒷부분은 전부 무시된다. 3. Constraint 1) 1
1. Input 1) int 배열 nums 2) 요소의 절반은 짝수, 절반은 홀수 2. Output 1) 인덱스가 짝수면 짝수를, 홀수면 홀수를 배치해놓은 배열 2) 1)의 조건만 맞다면 어떤 배열을 반환하든 상관없다. 3. Constraint 1) 2
1. Input 1) int 배열 nums 2. Output 1) 모든 짝수를 앞쪽으로. 모든 홀수를 뒤쪽으로 정렬한 배열 2) 요소의 순서는 짝수끼리, 홀수끼리 달라져도 상관없기 때문에, 1)을 만족하는 배열 아무거나 반환하면 된다. 3. Constraint 1) 1
1. Input 1) int 배열 nums 2. Output 1) nums의 요소가 계속 감소하거나 계속 증가하면 true를, 아니면 false를 반환 2) 계속 증가한다는 것은 모든 i
1. Input 1) 크기가 n*n인 2차원 int 행렬 grid 2) grid[i][j]는 (i, j)에 쌓여있는 큐브의 수 2. Output 1) xy평면, yz평면, zx평면에 보이는 큐브의 수의 합 3. Constraint 1) n == grid.length == grid[i].length 2) 1

[동기화가 필요한 이유] 1. 멀티 쓰레드 프로세스에서는 다른 쓰레드의 작업에 영향을 미칠 수 있다. - 진행 중인 작업이 다른 쓰레드에게 간섭받지 않게 하려면 동기화가 필요하다. 2. 동기화를 하려면 다른 쓰레드에게 간섭받지 않아야 하는 문장들을 임계 영역(critical section)으로 설정한다. - 임계 영역은 락(lock)을 얻은 단 하나의 쓰레드만 출입이 가능하다.(객체 1개에 락 1개) - 락을 걸어둠으로써 데이터의 일관성을 유지하게 한다. - 임계 영역이 많을수록 성능이 떨어지기 때문에 최소한의 영역만 설정한다. [synchronized 키워드를 이용한 동기화] 1. 임계 영역을 설정하는 방법 // 1) 특정한 영역을 임계 영역으로 지정 synchronized(객체의 참조변수) { // ..

[데몬 쓰레드] boolean isDaemon() // 쓰레드 그룹이 데몬 쓰레드 그룹이면 true를 반환한다. void setDaemon(boolean on) // 쓰레드를 데몬 쓰레드 또는 사용자 쓰레드로 변경한다. on을 true로 지정하면 데몬 쓰레드가 된다. // setDaemon()은 반드시 start()를 호출하기 전에 실행되어야 한다. // start() 후에는 데몬 쓰레드로 변경할 수 없기 때문이다. // start() 전에 setDaemon()을 호출하면 IllegalThreadStateException이 발생한다. 1. 일반 쓰레드(non-daemon thread)의 작업을 돕는 보조적인 역할을 수행하는 쓰레드 2. 일반 쓰레드가 모두 종료되면 자동적으로 종료된다. 3. 가비지 컬렉터..
1. Input 1) 2차원 int 배열 matrix 2. Output 1) matrix를 transpose한 결과 2) transpose란 행과 열을 바꾸는 것을 말한다. matrix[0][0]에서 오른쪽 아래로 내려가는 대각선을 기준으로 데칼코마니 위치에 있는 것 끼리 바꿨다고 생각해도 무방하다. 3. Constraint 1) m == matrix.length 2) n == matrix[i].length 3) 1
1. Input 1) 고객들이 지불한 금액이 순서대로 담긴 int 배열 bills 2. Output 1) 고객들에게 맞는 잔돈을 지불할 수 있다면 true, 아니면 false 반환 2) 레모네이드 한잔에 5원이다 3) 화폐는 5원, 10원, 20원의 3종류가 있고, 고객은 이 중 하나를 지불한다. 4) 나는 잔돈 없이 장사를 시작하고, 갖고 있는 돈 내에서 고객에게 잔돈을 지불해줘야 한다. 3. Constraint 1) 1 잔돈X -> 수중에 5원 1개 - 두 번째 고객 -> 잔돈X -> 수중에 5원 2개 - 세 번째 고객 -> 잔돈 5 -> 수중에 5원 1개, 10원 1개 - 네 번째 고객 -> 잔돈 5 -> 수중에 10원 1개 - 다섯 번째 고객 -> 잔돈 15 -> 지불 불가 -> false 반환 ..