자료구조(Data Structure)
- 데이터의 구체적 표현이며, 데이터를 프로그래머 관점에서 정의한다
- 데이터를 메모리에 저장하는 방법을 나타낸다
- 문제 유형에 따라 최적의 자료 구조를 선택해야 한다
자료 구조의 종류
💡 자주 사용되는 자료구조들
다음 자료 구조의 링크를 클릭하면 해당 게시글로 넘어갑니다! 🏃🏃🏃
- 배열 : codesyun.tistory.com/107
[Algorithm] 배열(Array)
배열 같은 자료형의 다중 원소 집합 순서대로 번호(인덱스, index)가 붙은 원소들이 연속적인 형태로 구성되어 있다 배열의 사용과 시간복잡도 1. k번째 위치에 원소 삽입 : 상수 시간 O(1)에 k번째
codesyun.tistory.com
- 연결 리스트 : codesyun.tistory.com/108
[Algorithm] 연결 리스트 (Linked list)
연결 리스트 (Linked List) 각 노드가 데이터와 포인터를 가지고 한 줄로 연결되어 있는 구조이다 데이터를 저장할 때 그 다음 순서의 데이터가 있는 위치를 데이터에 포함시키는 방식으로 자료를
codesyun.tistory.com
- 스택 : codesyun.tistory.com/109
[Algorithm] 스택 (Stack)
스택 (Stack) 한 쪽 끝에서만 자료를 넣거나 뺄 수 있는 선형 자료 구조 후입 선출(LIFO, Last-In-First-Out) 전략을 따르므로, 마지막에 추가한 원소가 먼저 제거된다 스택의 사용 1. 재귀(recursion) 호출 2..
codesyun.tistory.com
- 큐 : codesyun.tistory.com/110
[Algorithm] 큐 (Queue)
큐 (Queue) 선입 선출 (FIFO, First-In-First-Out) 형태의 자료 구조 먼저 추가한 원소가 먼저 제거된다 큐의 사용 1. 공유 자원 접근 (예 : 프린터) 2. 멀티 프로그래밍 3. 메시지 큐 4. 그래프와 트리의 너비.
codesyun.tistory.com
- 힙 : codesyun.tistory.com/111
[Algorithm] 힙(Heap)과 우선순위 큐(Priority Queue)
우선순위 큐(Priority Queue) 일반적인 큐는 조건 없는 FIFO(First-In-First-Out) 구조이지만, 우선순위 큐(Priority Queue)는 우선순위에 따라 특별한 순서로 원소를 추출하는 것이다 이진 힙 자료구조로 구현
codesyun.tistory.com
- 트리 : codesyun.tistory.com/112
[Algorithm] 트리 (Tree), 이진 트리(Binary tree)
트리 (Tree) 계층형 자료 구조 트리의 최상위 원소를 루트(root)라고 하고, 나머지 모든 원소는 부모 원소가 있고 0개 이상의 자식 원소를 가진다 자식 노드가 없는 노드는 리프 노드(leaf node)라고 한
codesyun.tistory.com
- 해시 테이블 : codesyun.tistory.com/113
[Algorithm] 해시 테이블 (Hash table)
해시 테이블 (Hash table) 키(key)에 값(value)을 매핑하는 자료 구조 - 해시 테이블의 각 위치는 슬롯(slot)이라고 한다 - 해시 함수(hash function)로 배열의 인덱스를 계산한다 - 실제 저장된 키의 개수가
codesyun.tistory.com
- 그래프 : codesyun.tistory.com/114
[Algorithm] 자료구조 - 그래프 (Graph)
그래프 (Graph) 네트워크를 표현하는 자료 구조로, 정점(vertex)라 부르는 노드와 정점 사이를 연결하는 간선(edge)의 집합으로 구성되는 자료 구조 - 간선(edge)는 두 노드 간 연결이고, 방향성이 있을
codesyun.tistory.com
'Computer Science > Algorithm' 카테고리의 다른 글
[Algorithm] 자료구조 - 연결 리스트 (Linked list) (0) | 2021.03.25 |
---|---|
[Algorithm] 자료구조 - 배열(Array) (0) | 2021.03.25 |
[Algorithm] 빅오 표기법과 시간 복잡도의 개념 및 예제 (2) | 2021.03.24 |
[Algorithm] 소수를 찾는 방법, 에라토스테네스의 체 (0) | 2021.01.17 |
[Algorithm] 브루트 포스와 BFS, DFS (0) | 2020.11.26 |