[자료구조] 자료구조란

1 minute read

자료구조란

자료구조란 효율적인 접근 및 수정을 가능케 하는 자료의 조직, 관리, 저장을 의미.
데이터 값의 모임, 또 데이터 간의 관계, 데이터에 적용할 수 있는 함수나 명령을 의미.
효과적으로 설계된 자료구조는 실행시간 혹은 메모리 용량과 같은 자원을 최소한으로 사용하면서 연산을 수행하도록 함.

자료구조 분류


그림 : 초보몽키의 개발블로그

공부 목차

목차 참고 : 킹포도의 코딩

  1. 데이터의 표현 (배열)
  2. 데이터의 표현 (연결리스트)
  3. Queue
  4. Stack
  5. 트리
  6. 그래프
  7. 정렬

백준 알고리즘 정기 강의 커리큘럼 참조

참고 : 백준 스타트링크

  1. 알고리즘과 입/출력
  2. 자료구조 1
    • 큐/스택/데크
    • 문자열
  3. 다이나믹 프로그래밍 1
  4. 알고리즘 수학 1
    • GCD/LCM
    • 소수
  5. 정렬
  6. 그래프 1
    • 정의와 표현방법
    • 탐색 (DFS/BFS)
    • 모델링
  7. 트리 1
    • 순회
    • 저장
    • 트리와 관련한 알고리즘
  8. 그리디
  9. 분할 정복
    • 이분 탐색
    • 머지 소트/퀵 소트
    • 가장 가까운 두 점
  10. 완전 탐색
    • 비트마스크
    • 순열
    • 부르트 포스
    • 백트래킹
  11. 자료구조 2
    • 스택 2
    • 서로소 집합(Disjoint-Set)
    • 힙과 힙 소트
    • 이진 탐색 트리 (BST)
  12. 다이나믹 프로그래밍 2
  13. 수학 2
    • 분할 정복
    • 이항 계수
    • 카탈란 수
    • 오일러 피 함수
    • 확장 유클리드 알고리즘
  14. 그래프 2
    • 위상 정렬
    • 최소 스패닝 트리 (MST)
    • 최단 경로 알고리즘 (벨만/다익스트라/플로이드와샬)
  15. 트리 2
    • 최소 공통 조상 (LCA)
  16. 완전 탐색 2
  17. 구간 트리
  18. 다이나믹 프로그래밍 3
  19. 네트워크 플로우
    • 최대 유량
    • 이분 매칭, 민 컷, 최소 버텍스 커버, 최대 독립 집합
    • 모델링
    • 최소 비용 최대 유량 (MCMF)
  20. 구간 트리 활용
  21. 그래프 3
    • 강연결 요소 (SCC)
    • 단절점과 단절선
    • 2-SAT
  22. 다이나믹 프로그래밍 4
  23. 문자열 매칭
    • KMP, 트라이, 아호코라식, Suffix Array
  24. 기하
    • CCW, 선분 교차 판별
    • 볼록 껍질(컨벡스 헐; Convex Hull)
    • 라인 스위핑
  25. 알고리즘 게임
    • 돌 게임, 님 게임 등
  26. 다이나믹 프로그래밍 5