ABOUT

성능과 운영 안정성을 함께 끌어올리는 개발자입니다.

92% Positional Error Reduction
79% p95 Latency Improvement
90%+ Long Tasks Reduction

2022.02 · 한국장학재단

우수 멘티

한국장학재단 사회 리더 대학생 멘토링 IT

2022.10 · 동작구청

우수 인재상

동작구청 우수 SW 인재

2025.05 · (주) 그랩

프로그래밍 우수상

(주) 그랩 우수 프로그램 개발

2025.05 · AWSKRUG

AWS한국사용자모임 발표

AI agent 스크립트 튜닝 관련 발표

ComputerScience

Development

Engineering

Trouble Shooting

GUESTBOOK

첫 마음부터
함께 나누는 온기

방명록 작성하러 가기

SUBSCRIBE

최신소식을
편하게 만나보세요.

데이터 구조

1. 배열 : 가장 기본적인 데이터 구조 

=> 배열 생성 시 설정된 셀의 수가 고정, 셀에는 인덱스 번호가 부여, 인덱스를 통해 셀 내의 데이터에 접근이 가능하다.

 장점 : 활용이 편함 (정렬, 탐색)

단점 : 메모리 크기가 고정, 추가 삭제 어려움 

 

 

 

 

2. 스택 : 순서가 보존되는 선형 데이터 구조 

=> 가장 마지막 요소(가장 최근 요소)부터 처리하는 구조

장점 : 동적 메모리 크기 (런타임이 빠르고, 데이터를 받는 순서대로 정렬)

단점 : 가장 최신 요소만 가져옴 (한번에 하나의 데이터만 처리 가능)

사용 : 브라우저 뒤로가기, 재귀

 

3. 큐 : 가정 먼저 입력된 요소를 처리하는 메커니즘

 장점 : 동적 메모리 크기 (런타임이 빠르고, 데이터를 받는 순서대로 정렬)

단점 : 가장 오래된 요소만 가져옴 (한번에 하나의 데이터만 처리 가능)

사용: 순서에 민감한 데이터 , 캐시 구현

4. 연결리스트 : 데이터의 물리적 배치 X , index나 위치보다 참조시스템을 사용.

=> 각 요소는 노드에 저장 되며, 다음 노드 연결에 대한 정보(포인터, 주소)가 저장,

장점 : 새로운 요소 추가 및 삭제 용이, 배열처럼 연속 위치 x(대용량 처리 접합)

단점 : 배열보다 메모리 소모가 많다. 

사용: 음악 플레이어, 이미지 뷰어 

5. 해시 테이블 : 대량의 정보를 저장하고 특정 요소를 효율적으로 검색할 수 있는 복잡한 뎅터 구조 

=> 버킷에 키(검색 시 사용되는 문자열) / 값(데이터)을 쌍으로 저장 , 메모리 크기 변경 가능

키는 미리 정의된 해시함수를 통해 해시 값을 받고 버킷을 가리킨다. 해시 숫자는 버킷의 index

장점 : 새로운 요소 추가/삭제 용이 , 검색 및 가져오기 용이 

단점 : 충돌이 일어날 수 있다.

사용: 사용자 로그인 인증 , 주소 찾기, 이름 찾기

 

 

6. 그래프 : 노드 사이에 엣지가 있는 collection

장점 : 새로운 요소 추가 삭제 용이, 구조의 응용이 가능하다.

단점 : 충돌이 일어날 수 있다. 

사용 : 사용자 로그인 인증

 

 

7. 트리 : 계층적 자료구조, 최상위 노드를 만들고, 자식을 추가해 간다.

  • A, B, C, D 등 트리의 구성요소를 노드(node) 라고 한다.
  • 위 그림의 A처럼, 트리 구조에서 최상위에 존재하는 노드를 root라고 한다.
  • 루트를 기준으로, 다른 노드로의 접근하기 위한 거리를 depth 라고 한다.
  • 같은 부모를 가지면서 같은 depth에 존재하는 노드들은 sibling 관계에 있다.
  • 그림에서 A는 B와 C의 부모(parent) 이고, B와 C는 A의 자식(child)이다.
  • 노드와 노드를 잇는 선을 edge 라고 한다.
  • 자식이 없는 노드는 leaf 라고 한다.

 

 

 

데이터를 처리, 저장, 검색 그리고 구성하는 데 사용되는 저장소(데이터를 효율적으로 액세스하고 업데이트)



분류:

1. 선형 데이터 구조 : 순차적으로 데이터 배열, 각 요소가 인접 요소에 연결된 데이터 구조

  • 정적 데이터 구조 : 메모리 크기가 고정 (엑세스가 더 쉽다.) ex)배열

배열

  • 동적 데이터 구조 : 메모리 크기가 비 고정
728x90