[자료구조] 배열 (Array)

2022. 7. 3. 23:37· 자료구조(Data Structure)
목차
  1. 배열이란?
  2. 배열의 탐색
  3. 배열의 삽입
  4. 배열의 삭제

이번 포스팅에선 배열 (Array)에 대해 살펴볼 것이다.

저번 포스팅에서 필요할 때마다 메모리를 할당받아 데이터를 저장하는 방법인 연결 리스트(Linked List)를 다뤘으니

이번 포스팅에선 미리 메모리를 확보한 다음 연속된 공간에 저장하는 방법인 배열에 대해 알아보자.

 

배열은 자료구조를 배우기 이전에도 컴퓨터 과학을 공부했다면 다 들어봤을 만한 기초적이고 중요한 것이다.

배열이란?

배열(array)은 같은 타입의 변수들로 이루어진 유한 집합으로 정의된다.

배열을 구성하는 각각의 값을 배열 요소(element)라고 하며, 배열에서의 위치를 가리키는 숫자는 인덱스(index)라고 한다.

배열은 같은 종류의 데이터를 많이 다뤄야 하는 경우에 사용할 수 있는 가장 기본적인 자료구조이다.

 

 

 

배열의 탐색

배열은 배열의 주소와 인덱스만 알면 바로 접근 가능하다.

이것이 배열의 가장 큰 핵심이다.

 

첫번째 셀의 주소 + (데이터 타입의 크기 * 해당 데이터의 인덱스)

ex) int 배열의 주소가 400일때 다섯 번째 셀의 주소는 400 + 4*5 = 420

⇒ 배열은 데이터에 대한 접근이 쉽고 빠르다는 장점이 있다.

 

 

x가 몇 번 인덱스인지 return하는 함수이다.

1. x가 몇 번 인덱스인지 알기 위해 0번 인덱스부터 순회한다.(for, while)

2. 만약 x가 배열의 i번째 인덱스 값과 같다면 i를 return 한다.

3. 일치하는 인덱스 i가 없다면 -1을 return 한다.

 

배열의 삽입

int형 배열의 a 번째 인덱스에 b를 삽입하는 함수이다.

1.  배열의 크기 - 1부터 a까지 for문을 순회하며 b가 삽입될 a번째 인덱스를 확보하기 위해 한 칸씩 뒤쪽으로 값들을 이동시킨다.

2. a번째 인덱스에 b를 삽입한다. 

 

 

배열의 삭제

int형 배열의 x가 담겨있는 인덱스를 삭제하는 함수이다.

1. 삭제될 인덱스부터 배열의 크기 - 1까지 for문을 순회하며 한 칸씩 앞쪽으로 값들을 이동시킨다.

2. 배열의 크기 - 1 번째 인덱스를 0으로 설정한다.(삭제됨을 의미)

 

'자료구조(Data Structure)' 카테고리의 다른 글

[자료구조] 스택(Stack)  (0) 2022.07.06
[자료구조] 연결 리스트(Linked List)  (0) 2022.07.03
[자료구조] 자료구조란? (Data Structure)  (0) 2022.07.01
  1. 배열이란?
  2. 배열의 탐색
  3. 배열의 삽입
  4. 배열의 삭제
'자료구조(Data Structure)' 카테고리의 다른 글
  • [자료구조] 스택(Stack)
  • [자료구조] 연결 리스트(Linked List)
  • [자료구조] 자료구조란? (Data Structure)
팜준
팜준
팜준
코드가 자라나는 텃밭
팜준
전체
오늘
어제
  • 분류 전체보기
    • 회고
    • 자료구조(Data Structure)
    • 백준 문제풀이(BOJ PS)
    • 대외활동(Activity)
    • 알고리즘(Algorithm)
    • 운영체제(OS, Operating System)
    • AWS
    • 취업준비
    • 일기

블로그 메뉴

  • 홈
  • 태그
  • 방명록

공지사항

인기 글

태그

  • java
  • 큐
  • 깊이우선탐색
  • DFS
  • 깃허브
  • 깃
  • 자료구조
  • 알고리즘
  • 덱
  • 그리디알고리즘
  • 완전탐색
  • 자바
  • 백준
  • 일기
  • deque
  • DP
  • 백트랙킹
  • 그래프탐색
  • 다이나믹 프로그래밍
  • BFS

최근 댓글

최근 글

hELLO · Designed By 정상우.v4.2.0
팜준
[자료구조] 배열 (Array)
상단으로

티스토리툴바

단축키

내 블로그

내 블로그 - 관리자 홈 전환
Q
Q
새 글 쓰기
W
W

블로그 게시글

글 수정 (권한 있는 경우)
E
E
댓글 영역으로 이동
C
C

모든 영역

이 페이지의 URL 복사
S
S
맨 위로 이동
T
T
티스토리 홈 이동
H
H
단축키 안내
Shift + /
⇧ + /

* 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.