일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 혼공파
- CS
- Android
- groupby
- 알고리즘
- 기술면접
- 정처기
- 인프런
- 혼공챌린지
- 혼공단
- join
- 자바
- 정보처리기사
- Kotlin
- java
- 자료구조
- 코틀린
- 스터디
- 카카오코테
- 코테
- 안드로이드
- 안드로이드스튜디오
- 오블완
- MySQL
- 티스토리챌린지
- 프로그래머스
- Til
- select
- doitandroid
- SQL
- Today
- Total
목록CS (33)
Welcome! Everything is fine.
기술면접 스터디에서 받은 질문을 복습하기 위한 용도로 정리한 내용입니다. 인덱스(Index)란 무엇이고 인덱스를 사용하는 자료구조는 어떤 것이 있나요?인덱스란 데이터베이스에서 튜플의 검색 속도를 높이기 위해 속성 값과 튜플이 저장된 주소를 저장하는 것을 말합니다. 인덱스를 사용하면 데이터가 정렬되어 있기 때문에 검색 속도가 빠르다는 장점이 있습니다. 인덱스를 사용하는 자료구조는 배열, 리스트, 해시 테이블, 트리 등이 있습니다.클러스터링(Clustering)과 리플리케이션(Replication)의 차이는 무엇인가요?클러스터링이란 동일한 데이터베이스를 여러 대의 서버가 관리하도록 하는 것을 말합니다. 여러 대의 서버를 이용하기 때문에 서버 한 대에 문제가 생기더라도 또 다른 서버가 동작하고 있어서 서비스에..
기술면접 스터디에서 받은 질문을 복습하기 위한 용도로 정리한 내용입니다. 스택으로 큐를 구현하고, 큐로 스택을 구현하는 방법은 무엇인가요?스택으로 큐를 구현하기 위해서는 2개의 스택이 필요합니다. 첫 번째 스택에 데이터를 넣고, 데이터를 뺄 때는 첫 번째 스택의 모든 데이터를 두 번째 스택으로 옮깁니다. 그렇게 하면 첫 번째 스택의 역순으로 두 번째 스택에 데이터가 저장될 것이고, 두 번째 스택에 있는 데이터를 하나씩 빼면 큐의 pop() 연산을 하는 것과 같은 결과가 나올 것입니다. 반대로 큐로 스택을 구현하기 위해서는 큐에 데이터를 넣고, 맨 위의 데이터가 나오기 전까지 데이터를 빼서 다시 큐에 넣습니다. 이 과정을 반복하면 스택을 구현할 수 있습니다.힙이란 무엇인가요?힙이란 완전 이진 트리의 한..
그래프란?비선형 자료구조 중 하나로, 데이터를 포함하는 정점(vertex)과 정점을 잇는 간선(edge)으로 구성된 자료구조그래프의 종류무방향 그래프 : 간선에 방향성이 없는 그래프, 정점의 개수가 n일 때 최대 간선의 개수는 n * (n - 1) / 2방향 그래프 : 간선에 방향성이 있는 그래프, 정점의 개수가 n일 때 최대 간선의 개수는 n * (n - 1)부분 그래프 : 기존 그래프에서 일부 정점 또는 간선을 제외한 그래프가중치 그래프 : 간선에 비용이나 가중치가 할당된 그래프완전 그래프(= 연결 그래프) : 간선을 최대로 가진 그래프유향 비순환 그래프 : 방향 그래프이면서 사이클이 없는 그래프그래프 구현 방법인접 행렬2차원 배열을 이용하여 그래프를 구현하는 방법, 간선의 수가 많은 밀집 그래프에서..
기술면접 스터디에서 받은 질문을 복습하기 위한 용도로 정리한 내용입니다. 멱등성(Idempotent)이란 무엇인가요?멱등성이란 같은 연산을 해도 결과가 달라지지 않는 성질을 말합니다. HTTP METHOD에서 '멱등성을 가진다'는 것은 동일한 요청을 한 번 보내는 것과 여러 번 보내는 것이 같은 효과를 가지고 서버의 상태도 변하지않는 것을 의미합니다.PUT과 PATCH의 차이는 무엇인가요?PUT과 PATCH 모두 리소스를 변경할 때 사용된다는 점은 비슷합니다. 그러나 PUT은 리소스 전체를 변경할 때 사용되며, 만약 리소스가 없을 시 해당 리소스를 생성할 수도 있습니다. PATCH는 리소스 전체가 아닌 일부를 변경할 때 사용된다는 점에서 PUT과 다릅니다.TCP와 UDP의 차이는 무엇인가요?TCP는 연결..
토폴로지와 병목현상에 대해 연관지어 설명해보세요. 토폴로지란?토폴로지란 컴퓨터 네트워크에 참여하는 요소들(노드, 링크)의 배치 형태를 말한다.(=망 구성방식)토폴로지의 종류버스형구조 : 모든 노드들이 단일 중앙 케이블(버스)에 연결되어 있다.장점 : 설치와 확장이 용이하며 비용이 적게 든다.단점 : 버스에 장애 발생 시 전체가 다운될 수 있으며 동시에 노드 간의 통신이 불가능하다.트리형구조 : 트리 구조로 계층적 구조 형태를 표현한다.장점 : 확장이 용이하고 계층 구조로 인해 관리가 편하다. 모든 노드를 연결하기 위한 회선 수가 적다.단점 : 상위 계층에 장애 발생 시 하위 계층도 영향을 받을 수 있다.스타형구조 : 모든 장치가 중앙의 허브나 스위치에 개별적으로 연결되어 있다. 중앙집중식이다.장점 : 장..
PUT과 PATCH의 차이를 설명해보세요. HTTP METHODHTTP METHOD란 클라이언트가 요청을 보낼 때 요청에 포함되어 해당 요청의 종류와 목적을 나타낸다.주요 메소드POST : 데이터 생성GET :데이터 조회PUT : 데이터 갱신, 해당 리소스가 없으면 생성PATCH : 데이터 일부 갱신DELETE : 데이터 삭제기타 메소드HEAD : 데이터 조회, 그러나 HTTP 메시지에 바디를 포함하지 않고 헤더로만 응답TRACE : 쿠키 및 세션 값을 포함해 클라이언트의 요청 메시지를 그대로 반환CONNECT : 요청한 자원을 양방향으로 연결, SSL을 사용하는 웹사이트에 접속 가능OPTION : 서버가 지원하는 HTTP 메서드를 메시지 헤더에 포함해 응답PUT과 PATCH의 차이PUT리소스 전체를 업..
기술면접 스터디에서 받은 질문을 복습하기 위한 용도로 정리한 내용입니다. 임계 영역(critical section)이란 무엇인가요?임계 영역이란 공유 자원에 접근할 수 있고 접근 순서에 따라 결과가 달라지는 코드 영역을 말합니다. 다시 말해, 동일한 자원을 동시에 접근하는 작업을 실행하는 영역을 의미합니다.임계 영역에서 여러 접근이 동시에 발생하는 것을 방지하기 위한 방법은 무엇인가요?임계 영역에서 여러 접근이 동시에 발생하는 것을 방지하기 위해서는 상호배제, 진행, 한정된 대기의 3가지 조건을 충족해야합니다. 먼저 상호 배제란 한 프로세스가 임계 영역을 실행 중일 때 다른 프로세스가 임계 영역에 접근할 수 없어야 하는 것을 말합니다. 진행은 임계 영역을 실행 중인 프로세스가 없을 때 다른 프로세스가 임..
Context Switching이란 무엇인가요? 인터럽트(interrupt)인터럽트(interrup)란 CPU에서 프로세스를 처리하다가 예외 상황이 발생할 때 이에 대응할 수 있게 CPU에 처리를 요청하는 것을 말한다. 인터럽트가 발생하는 경우는 입출력 이벤트가 발생할 때, CPU 사용시간이 만료되었을 때, 자식 프로세스를 생성할 때 등이 있다. Context SwitchingCPU는 하나의 프로세스만 처리할 수 있기 때문에 멀티 프로세스를 처리하려면 인터럽트가 발생하면서 콘텍스트 스위칭이 발생한다.콘덱스트 스위칭이란 CPU가 처리중인 프로세스를 변경하는 것이다. 다시 말해, 현재 실행 중인 프로세스의 제어를 다른 프로세스에 넘겨서 그 프로세스가 실행 가능하도록 하는 것을 의미한다. 콘덱스트 스위칭이 발..