전체 글(754)
-
[SQL][3] 자동차 대여 기록 별 대여 금액 구하기
문제 설명 다음은 어느 자동차 대여 회사에서 대여 중인 자동차들의 정보를 담은 CAR_RENTAL_COMPANY_CAR 테이블과 자동차 대여 기록 정보를 담은 CAR_RENTAL_COMPANY_RENTAL_HISTORY 테이블과 자동차 종류 별 대여 기간 종류 별 할인 정책 정보를 담은 CAR_RENTAL_COMPANY_DISCOUNT_PLAN 테이블 입니다. CAR_RENTAL_COMPANY_CAR 테이블은 아래와 같은 구조로 되어있으며, CAR_ID, CAR_TYPE, DAILY_FEE, OPTIONS 는 각각 자동차 ID, 자동차 종류, 일일 대여 요금(원), 자동차 옵션 리스트를 나타냅니다. Column nameTypeNullable CAR_IDINTEGERFALSE CAR_TYPEVARCHAR(..
2023.11.24 -
[디자인 패턴] Strategy pattern의 의미
왜 이름이 strategy일까? strategy는 전략이다. 왜 전략일까? 왜냐하면 클라이언트나 상황에 따라 어떠한 인스턴스나 알고리즘을 사용해야 할지를 '전략적'으로 고를 수 있기 때문이다. 예를 들어, 자동차의 바퀴 인터페이스를 통해 체인 바퀴와 고무 바퀴를 만들었다고 해보자. 그러면 만약 눈이 오는 상황에서는 어떤 바퀴가 적합하겠는가? 체인 바퀴이다. 반대로 눈이 오지 않는 상황에서는 고무 바퀴가 적합하다. 이렇듯 내가 상황에 따라 어떤 바퀴를 사용해야할지를 전략적으로 선택할 수 있기 때문에 전략 패턴이다.
2023.11.24 -
[CS] 뮤텍스와 세마포어에 대한 나름의 이해
뮤텍스와 세마포어는 모두 프로세스 동기화를 위해 사용된다. 뮤텍스는 한번에 하나의 프로세스 또는 스레드만 접근이 가능하다. 반면에 세마포어는 하나 이상의 프로세스 또는 스레드가 접근이 가능하다. 즉, 세마포어 중 하나의 프로세스 또는 스레드만 접근이 가능한게 뮤텍스이다. 둘다 크리티컬 섹션에 대한 접근 권한을 얻기 전까지 대기를 한다. Referene https://www.yes24.com/Product/Goods/121769526 기술 면접 대비 CS 전공 핵심요약집 - 예스24 1분 1초가 아쉬운 취업/이직 준비생을 위해기술 면접에 필요한 CS 전공의 핵심 내용만 간추렸다!비전공자는 물론 IT 전공자라도 광범위한 CS 전공 중에 어떤 내용이 출제될지 감을 잡기 어렵다. 서 www.yes24.com
2023.11.22 -
[CS] 프로세스 동기화에 대한 나름의 이해
여러 프로세스나 쓰레드가 공유 자원에 접근해도 일관성을 유지하는 것이다. 공유 자원에 접근하는 코드를 크리티컬 섹션이라고 한다. 크리티컬 섹션에 대한 상호배제 기법이 잘 이루어져야 한다. 이를 위해 뮤텍스와 세마포어를 사용한다. Reference https://www.yes24.com/Product/Goods/121769526 기술 면접 대비 CS 전공 핵심요약집 - 예스24 1분 1초가 아쉬운 취업/이직 준비생을 위해기술 면접에 필요한 CS 전공의 핵심 내용만 간추렸다!비전공자는 물론 IT 전공자라도 광범위한 CS 전공 중에 어떤 내용이 출제될지 감을 잡기 어렵다. 서 www.yes24.com
2023.11.19 -
[CS] 프로세스 스케줄링에 대한 나름의 이해
장기 스케줄러: 레디큐에 갈 프로세스를 정함. 다르게 말하면 메모리에 올라갈 프로세스를 정함. 현대 OS에서는 사용하지 않는다. 단기 스케줄러(CPU 스케줄러): CPU를 사용할 프로세스를 정함 중기 스케줄러: 메모리를 빼앗을 프로세스를 정함(프로세스 통째로 빼앗아감). Swapper 너무 많은 프로세스가 올라가면 CPU 효율이 떨어지는 이유는 각 프로세스마다 실행에 필요한 메모리를 다 올리지 못하기 때문에 계속적으로 swapping이 일어나기 때문이다. 너무 적은 프로세스가 올라가면 CPU 효율이 떨어지는 이유는 I/O 요청을 하게 되면 CPU는 놀게 되기 때문이다. Swap out 된 프로세스의 상태는 suspended이다. 이 상태는 외부에서 올려주기 전까지는 다시 올라갈 수 없다. suspende..
2023.11.19 -
[알고리즘][X] 순위 검색
문제 설명 [본 문제는 정확성과 효율성 테스트 각각 점수가 있는 문제입니다.] 카카오는 하반기 경력 개발자 공개채용을 진행 중에 있으며 현재 지원서 접수와 코딩테스트가 종료되었습니다. 이번 채용에서 지원자는 지원서 작성 시 아래와 같이 4가지 항목을 반드시 선택하도록 하였습니다. 코딩테스트 참여 개발언어 항목에 cpp, java, python 중 하나를 선택해야 합니다. 지원 직군 항목에 backend와 frontend 중 하나를 선택해야 합니다. 지원 경력구분 항목에 junior와 senior 중 하나를 선택해야 합니다. 선호하는 소울푸드로 chicken과 pizza 중 하나를 선택해야 합니다. 인재영입팀에 근무하고 있는 니니즈는 코딩테스트 결과를 분석하여 채용에 참여한 개발팀들에 제공하기 위해 지원자..
2023.11.18