기술면접 예상 질문(CS)

#Tech Interview
Written by Owen2024년 10월 3일 · 5 min read

시리즈의 글 (5개)

  1. 기술면접 예상 질문(Javascript)
  2. 기술면접 예상 질문(CS)
  3. 기술면접 예상 질문(Front)
  4. 기술면접 예상 질문(CSS)
  5. 기술면접 예상 질문(HTML)

banner

by Kyojin Hwang


📚카테고리 (Category)

📌 자료구조

🗄️ 자료구조란?

  • 정의: 데이터를 조직화하고 저장하는 방법.
  • 목적: 데이터 접근 및 조작의 효율성을 향상.
  • 종류: 배열, 연결 리스트, 스택, 큐, 해시 테이블, 트리, 그래프 등

🗄️ 대표적인 자료구조는 어떤 것들이 있나요.

  • 배열, 스택, 큐, 연결리스트, 트리, 그래프, 해쉬테이블

🗄️ 선형구조와 비선형구조에 대해서 설명해주세요.

선형구조

  • 데이터 요소들이 직선으로 순차적으로 저장되는 구조.
  • 각 데이터 요소는 이전 요소와 다음 요소에 대한 관계를 가지며, 하나의 시작과 끝이 존재한다.
  • 예시 : 배열, 스택, 큐, 연결리스트

비선형구조

  • 데이터 요소들이 임의의 구조로 저장되는 방식입니다.
  • 데이터 요소 간의 관계가 선형적이지 않고, 복잡한 데이터 관계를 표현할 수 있습니다.
  • 예시 : 트리, 그래프, 해쉬테이블

🗄️ 배열 이란?

  • 데이터 타입의 요소들이 연속적으로 저장된 자료구조.
  • 배열은 고정된 크기를 가지며, 각 요소는 인덱스를 통해 빠르게 접근할 수 있습니다.

🗄️ 스택 이란?

  • 후입선출(LIFO) 방식으로 저장하는 자료구조.
  • 데이터의 삽입과 삭제가 한 쪽 끝에서만 이루어진다.

🗄️ 큐 란?

  • 선입선출(FIFO) 방식으로 저장되는 자료구조.
  • 한 쪽 끝에서 추가되고 다른 쪽 끝에서 제거된다.

🗄️ 연결리스트 란?

  • 데이터를 노드(Node)라는 요소로 구성하여 각 노드가 다음 노드에 대한 참조(포인터)를 가지는 자료구조
  • 연결리스트 종류
    • 단일 연결 리스트 (Singly Linked List): 각 노드가 다음 노드에 대한 참조만 가지고 있습니다. 마지막 노드는 null을 가리킵니다.
    • 이중 연결 리스트 (Doubly Linked List): 각 노드가 이전 노드와 다음 노드에 대한 참조를 모두 가집니다. 이를 통해 양방향 탐색이 가능합니다.
    • 원형 연결 리스트 (Circular Linked List): 마지막 노드가 첫 번째 노드를 가리키는 형태로, 끝이 없는 구조입니다.

📌 네트워크

🛜 네트워크에서 패킷이란 무엇을 의미하나요?

  • 데이터를 전송하기 위한 기본 단위이다.
  • 대용량의 데이터가 네트워크를 통해 전송될 때, 이 데이터를 여러 개의 작은 조각으로 나누어 패킷으로 만들어 전송한다.

🛜 네트워크에서 패킷의 구성요소는? 그리고 각 요소를 설명해주세요.

  • 헤더
    • 패킷의 시작부분이다.
    • 출발지와 목적지 IP 주소, 프로토콜 정보(예: TCP 또는 UDP), 패킷 번호 등의 메타데이터가 포함
  • 페이로드
    • 실제 데이터가 포함된 부분이다. 예를 들어, 웹 페이지의 HTML 코드나 파일의 일부가 여기에 해당합니다.
  • 트레일러
    • 오류 검출을 위한 체크섬과 같은 정보를 포함한다.

체크섬(checksum)은 데이터 전송 과정에서 데이터의 무결성을 검증하기 위해 사용되는 간단한 오류 검출 방법입니다.

📌 프로세스와 스레드

📜 프로세스와 스레드에 대해 설명해주세요.

  • 프로세스는 메모리 상에서 실행중인 프로그램.
  • 스레드는 프로세스 안에서 실행되는 흐름 단위.

📚Move