콘텐츠 내 자동삽입광고

광고1

posted by 초코생크림빵 2025. 4. 9. 05:32
반응형

배열이 왜 빠르고 효율적인지를 이해하는 핵심이에요!


📌 먼저: 배열이란?

배열은 같은 종류의 데이터를 순서대로 저장한 것이에요.

 
int scores[5] = {80, 90, 70, 85, 60};

이 배열은 5개의 정수를 차례대로 저장하고 있어요.
컴퓨터 메모리에서는 이 배열이 연속된 공간에 저장돼요.


🎯 인덱스 방식이 중요한 이유

1. 빠르게 접근 가능 (O(1))

  • 배열의 시작 주소를 알고 있다면,
  • i번째 값은 👉 시작 주소 + i * 데이터 크기로 바로 계산 가능!

📍 즉, 원하는 위치로 바로 점프해서 접근 가능해요.
이걸 인덱스 주소 방식(indexed addressing)이라고 해요.


💡 예시:

배열 시작 주소가 1000번이고,
각 정수가 4바이트라면:

인덱스계산된 주소저장된 값
0 1000 80
1 1004 90
2 1008 70
3 1012 85

→ scores[2] = 주소 1008 = 70

👉 인덱스를 이용해서 바로 접근! 빠름!


2. 반복문과 궁합 최고

for (int i = 0; i < 5; i++) { printf("%d\n", scores[i]); }
  • 인덱스 i만 바꾸면서 순서대로 접근 가능
  • 별도로 주소를 기억하거나 계산할 필요 없음

3. 배열이 메모리에서 연속되어 있기 때문

  • 인덱스 방식이 작동하는 이유는 배열이 연속된 공간에 있기 때문이에요.
  • 그래서 i번째를 계산할 수 있는 거예요.

✅ 요약:

배열에서 인덱스 방식은
“빠르게 원하는 위치로 접근”하게 해줘서
속도도 빠르고, 코딩도 간단하게 해줘요!

반응형

콘텐츠 내 자동삽입광고