본문 바로가기
용어?

메모리 오버헤드 (memory overhead)

by JJong | 쫑 2025. 2. 20.

주된 작업을 수행하는 데에 직접적으로 사용하는 메모리 외의 추가적으로 사용하는 메모리

 

 

1️⃣ 배열(array)

  • 정수 100개를 저장한다고 하면, 정수 100개 크기만큼의 메모리를 차지함.
  • 예를 들어, int형(4바이트) 배열이라면 → 100 × 4B = 400바이트만 사용하면 됨.

2️⃣ BST(Binary Search Tree)

  • 같은 정수 100개를 저장하려고 해도,
    각 노드는 데이터(int)뿐만 아니라 왼쪽, 오른쪽 자식 노드를 가리키는 포인터(포인터는 8바이트)를 저장해야 함.
  • 즉, 각 노드마다 추가적인 메모리(오버헤드)가 필요함!
  • 만약 int형 데이터를 저장하는 BST라면,
    • 데이터: 4B
    • 왼쪽 포인터: 8B
    • 오른쪽 포인터: 8B
      총 20바이트!
  • 노드가 100개라면?
    • 20B × 100개 = 2000바이트배열(400B)보다 5배나 더 많이 사용!

 

 

by. ChatGPT

'용어?' 카테고리의 다른 글

댕글링 포인터 (Dangling Pointer)  (0) 2025.05.23
키워드 : keyword  (0) 2024.06.08

댓글