목록분류 전체보기 (184)
이숭간 공부기록
https://app.codility.com/programmers/lessons/8-leader/dominator/ Dominator coding task - Learn to Code - Codility Find an index of an array such that its value occurs at more than half of indices in the array. app.codility.com 문제번역 : 리스트의 길이의 절반이상을 차지하는 원소가 있다면, 그 원소가 등장하는 아무 인덱스를 리턴하는것 문제풀이 : 리스트의 절반이상을 차지하는 원소가 있다면, 즉 dominator가 존재한다면 정렬했을때 무조건 중심에 위치하게 될것임 다만, 중심에 있는 원소가 dominator의 후보가 되는것이지 ..
https://app.codility.com/programmers/lessons/4-counting_elements/max_counters/ MaxCounters coding task - Learn to Code - Codility Calculate the values of counters after applying all alternating operations: increase counter by 1; set value of all counters to current maximum. app.codility.com 문제풀이 : 이문제는 시간초과가 빡세다 구현은 엄청 쉬운데 그냥 일반적이게 구현하면 시간초과가 나는데 해결하기위한 아이디어는 max counter가 마지막으로 일어나는 시점을 통해 해결해야한..
https://app.codility.com/programmers/lessons/4-counting_elements/frog_river_one/ FrogRiverOne coding task - Learn to Code - Codility Find the earliest time when a frog can jump to the other side of a river. app.codility.com 문제번역 : 개구리가 한편에서 반대로 건너가기위해서는 나뭇잎을 밟아가야함 🐸 나뭇잎이 1초에 하나씩 떨어지는데 전체가(경로전체) 나뭇잎으로 덮이는 가장 빠른 시점을 리턴하는것 문제풀이 : 방문처리 배열을 두고 방문처리가 모두 되는 첫 시점 (cnt활용)을 리턴하도록한다. # X를 순회하면서 해당위치에 나뭇잎이 ..
https://app.codility.com/programmers/lessons/3-time_complexity/tape_equilibrium/ TapeEquilibrium coding task - Learn to Code - Codility Minimize the value |(A[0] + ... + A[P-1]) - (A[P] + ... + A[N-1])|. app.codility.com 문제번역 : N개의 정수로 구성된 비어 있지 않은 배열 A가 제공됩니다. 어레이 A는 테이프의 숫자를 나타냅니다. 0 < P < N과 같은 정수 P는 이 테이프를 비어 있지 않은 두 부분으로 나눕니다. A[0], A[1], ..., A[P − 1] 및 A[P], A[ P + 1], ..., A[N − 1]. 두 부분..
동기화를 위해서 공유자원을 관리하기 위해서 존재함 (공유자원을 안전하게 관리하기 위함 → 상호배제 달성) 임계구역 (Critical Section) 서로다른 두 프로세스(스레드)가 같이 접근해서는 안되는 공유 영역 임계구역으로 설정되어야 하는 부분이 임계구역으로 설정되지 않았을때 발생하는 문제들 생산자-소비자 문제 ex)키보드문제 : 키보드에 입력하면 문자를 큐에 넣고 프로그램에서 큐에서 문자를 하나씩 얻어가는데, 이때 문자를 큐에서 빼고 head를 조정하는 부분은 임계구역으로 설정되어야 한다. 독자-저자 입출금 문제 뮤텍스 공유자원을 한번에 한 프로세스(스레드)만 접근할 수 있도록 키를 기반으로 상호배제를 달성하는 방법 키에 해당하는 어떤 오브젝트가있고, 이를 소유한 프로세스(스레드)만 공유자원에 접근..
DataSource란? DB와 관계된 커넥션 정보를 담고있으며 빈으로 등록하여 인자로 넘겨준다. → 이 과정을 통해 Spring은 DataSource로 DB와의 연결을 획득한다. DB 서버와의 연결을 해준다. DB Connetion pooling기능 종류 : JDBC Driver vendor(MySQL, Oracle)별로 여러가지가 존재한다. DataSource를 설정하고 빈에등록, 주입하는 방법 DB와의 연결을 위해 **DB서버 정보(Property)**를 설정한다. (하드코딩을 피하기위해 파일로 설정 → 이곳에서만 수정하면 다른 모든부분에 변경내용이 적용되므로 이렇게 하는것이 좋다.) 설정한 property file을 통해 DataSource를 빈으로 등록한다. Spring JDBC를 이용하려면 DB..