일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- C++
- 프로그래밍
- 웹프로그래밍
- CS
- dp
- 리액트
- react
- 프로그래머스
- 동적계획법
- OS
- Level2
- Medium
- VUE
- typescript
- 리트코드
- sql
- python
- javascript
- 자바스크립트
- Level1
- 카카오
- Level3
- Doitvue.js입문
- 고득점Kit
- 백준
- 코테연습
- 파이썬
- 배열
- LeetCode
- web
- Today
- Total
목록분류 전체보기 (364)
후보키 문제 릴레이션을 나타내는 문자열 배열 relation이 매개변수로 주어질 때, 이 릴레이션에서 후보 키의 개수를 return 하도록 solution 함수를 완성하라. 제한사항 relation은 2차원 문자열 배열이다. relation의 컬럼(column)의 길이는 1 이상 8 이하이며, 각각의 컬럼은 릴레이션의 속성을 나타낸다. relation의 로우(row)의 길이는 1 이상 20 이하이며, 각각의 로우는 릴레이션의 튜플을 나타낸다. relation의 모든 문자열의 길이는 1 이상 8 이하이며, 알파벳 소문자와 숫자로만 이루어져 있다. relation의 모든 튜플은 유일하게 식별 가능하다.(즉, 중복되는 튜플은 없다.) 풀이 순위 검색 문제와 비슷했다. 언패킹 몰랐으면 풀기 어려웠을 것 같다. ..
순위 검색 문제 지원자가 지원서에 입력한 4가지의 정보와 획득한 코딩테스트 점수를 하나의 문자열로 구성한 값의 배열 info, 개발팀이 궁금해하는 문의조건이 문자열 형태로 담긴 배열 query가 매개변수로 주어질 때, 각 문의조건에 해당하는 사람들의 숫자를 순서대로 배열에 담아 return 하도록 solution 함수를 완성해 주세요. 제한사항 info 배열의 크기는 1 이상 50,000 이하입니다. info 배열 각 원소의 값은 지원자가 지원서에 입력한 4가지 값과 코딩테스트 점수를 합친 "개발언어 직군 경력 소울푸드 점수" 형식입니다. 개발언어는 cpp, java, python 중 하나입니다. 직군은 backend, frontend 중 하나입니다. 경력은 junior, senior 중 하나입니다. 소..
게임 맵 최단거리 문제 게임 맵의 상태 maps가 매개변수로 주어질 때, 캐릭터가 상대 팀 진영에 도착하기 위해서 지나가야 하는 칸의 개수의 최솟값을 return 하도록 solution 함수를 완성해주세요. 단, 상대 팀 진영에 도착할 수 없을 때는 -1을 return 해주세요. 제한사항 maps는 n x m 크기의 게임 맵의 상태가 들어있는 2차원 배열로, n과 m은 각각 1 이상 100 이하의 자연수입니다. n과 m은 서로 같을 수도, 다를 수도 있지만, n과 m이 모두 1인 경우는 입력으로 주어지지 않습니다. maps는 0과 1로만 이루어져 있으며, 0은 벽이 있는 자리, 1은 벽이 없는 자리를 나타냅니다. 처음에 캐릭터는 게임 맵의 좌측 상단인 (1, 1) 위치에 있으며, 상대방 진영은 게임 맵의..
TCP (Transmission Control Protocol) unreliable network에서, reliable network를 보장할 수 있도록 하는 프로토콜 송신자와 수신자가 모두 소켓이라는 종단점을 생성함으로써 이루어다. TCP의 연결 설정은 3-way hand shake를 통해 이뤄진다. full-duplex : 전송이 양방향으로 동시에 일어날 수 있다. point to point : 각 연결이 정확히 2개의 소켓을 가지고 있음을 의미한다. 멀티 캐스팅이나 브로드 캐스팅을 지원하지 않는다. 소켓 사이에 바이트 스트림을 전송하도록 설계 되어 신뢰성이 보장된다. 메시지가 유실되지 않고 메시지가 내려온 순서대로 전송된다. 연결지향적이다. 흐름제어, 혼잡 제어 기능을 한다. TCP 흐름제어 상대방..
OSI 7 계층 통신이 일어나는 과정을 단계별로 알 수 있고 이상이 생기면 그 단계만 수정할 수 있다. 서로 다른 시스템 간을 상호 접속하기 위한 개념을 규정한다. 7. 응용계층 (Application Layer) 사용자(응용프로그램)가 OSI 환경에 접근할 수 있도록 서비스를 제공한다. 데이터 단위 :메시지 6. 표현계층 (Present Layer) 응용 계층으로부터 받은 데이터 표현에 대한 독립성을 제공하고 암호화하는 역할을 담당한다. JPEG, MPEG, SSL 데이터 단위 :메시지 5. 세션계층 (Session Layer) 데이터가 통신하기 위한 논리적 연결을 담당한다. TCP/IP 세션을 만들고 없애는 책임을 지니고 있다. 대화 구성 및 동기 제어, 데이터 교환 관리 기능을 한다. 프로토콜: A..
스케줄러 프로세스가 생성되어 실행될 때 필요한 시스템의 여러 자원을 해당 프로세스에게 할당하는 작업이다. CPU나 자원을 효율적으로 사용하기 위한 정책으로 오버헤드를 줄이고 CPU 사용률을 높여 기아 현상을 줄이는 것을 목표로 한다. Batch System: 가능하면 많은 일을 수행. 시간보다 처리량이 중요 Interactive System: 빠른 응답 시간, 적은 대기 시간 Real-time System: 기한(dead line) 맞추기 Terminologies CPU가 Operation을 수행하는데 걸리는 시간을 CPU Burst라고 한다. CPU가 I/O를 기다리는데 걸리는 시간을 I/O Burst 라고 한다. 모든 프로세스는 CPU - I/O burst를 번갈아 가면서 실행 I/O에 의해 bloc..
스레드 프로세스의 실행 단위라고 할 수 있다. 프로세스 안에서 실행 되는 여러단위를 스레드라고 하며 기본적으로 프로세스마다 메인 스레드를 포함하여 최소 1개의 스레드를 갖는다. 스레드는 스레드 ID, 프로그램 카운터, 레지스터 집합 그리고 스택으로 구성된다. 같은 프로세스에 속한 다른 스레드와 코드, 데이터 섹션 그리고 열린 파일이나 신호와 같은 운영체제 자원을 공유한다. 하나의 프로세스를 다수의 실행 단위로 구분하여 자원을 공유하고 자원의 생성과 관리의 중복성을 최소화하여 수행 능력을 향상 시키는 것을 멀티 스레딩이라고 한다. 이 경우 각각의 스레드는 독립적인 작업을 수행해야하기 때문에 각자의 스택과 PC 레지스터 값을 가지고 있다. 스택을 스레드마다 할당하는 이유 스택은 함수 호출시 전달되는 인자, ..
프로세스 프로세스는 실행 중인 프로그램으로 디스크로부터 메모리에 적재되어 CPU의 할당을 받을 수 있는 것을 말한다. 운영체제로 부터 주소공간, 파일, 메모리 등을 할당 받으며 이것을 총칭하여 프로세스라고 한다. job = task = process 프로세스는 다음을 포함한다. 스택 (stack): 함수의 매개변수, 로컬 변수와 같은 임시 자료 스택의 할당과 할당 해제는 런타임에 일어나지만 스택의 각 프레임은 컴파일 타임에 결정된다. 힙 (heap) : 프로세스 실행 중에 동적으로 할당되는 메모리 데이터 (data): 전역 변수들을 저장 코드(Code) : 코드 자체를 구성하는 메모리 영역 Execution Sequence and Stack 실행 순서를 제어하기 위해 흔히 스택을 사용한다. call st..