라떼군 이야기


처음 배우는 자료구조

입문 / Python 3 / 14강

연락처는 이름으로 찾고, 음악은 재생 순서대로 넘겨 듣습니다. 같은 데이터라도 하려는 일에 따라 담는 방법이 달라집니다. 이 강좌에서는 자료구조를 왜 쓰는지, 언제 고르면 좋은지를 배웁니다.

처음이라면 목차 순서대로 읽으세요. 코드를 실행하기 전에 결과를 예상해 보고, 확인 문제의 해설은 직접 답한 뒤 펼쳐 보세요.

강좌 목차

  1. 01 자료구조와 연산 비용데이터를 담는 방법과 일을 처리하는 순서를 구분합니다.
  2. 02 배열과 참조번호로 바로 찾는 배열과 같은 객체를 가리키는 참조를 배웁니다.
  3. 03 스택과 되돌리기마지막에 넣은 것을 먼저 꺼내는 규칙으로 괄호를 검사합니다.
  4. 04 큐와 순서대로 처리하기먼저 온 요청부터 처리하는 큐와 양쪽 끝을 쓰는 덱을 구분합니다.
  5. 05 연결 리스트항목을 옮기는 대신 다음 항목으로 가는 연결을 바꿉니다.
  6. 06 원형과 이중 연결 리스트반복 재생과 앞뒤 이동에 맞게 연결을 바꿔 봅니다.
  7. 07 트리와 순회계층 관계를 나타내고 모든 노드를 방문하는 순서를 정합니다.
  8. 08 탐색 트리와 균형값의 크기로 갈 방향을 고르고 트리가 한쪽으로 기우는 문제를 봅니다.
  9. 09 힙과 우선순위가장 급한 일을 빠르게 꺼내는 우선순위 큐를 만듭니다.
  10. 10 그래프와 탐색복잡한 연결을 표현하고 BFS와 DFS로 길을 따라갑니다.
  11. 11 최단 경로와 최소 신장 트리빨리 이동하는 문제와 적은 비용으로 모두 연결하는 문제를 구분합니다.
  12. 12 먼저 해야 할 일을 정하는 위상 정렬작업의 선후 관계를 방향 그래프로 나타냅니다.
  13. 13 정렬과 기준 선택삽입 정렬을 따라가며 정렬 방식의 비용과 안정성을 비교합니다.
  14. 14 탐색과 해싱, 상황에 맞게 고르기이진 탐색과 해시 테이블을 비교하고 배운 구조를 골라 봅니다.
제품 기획, 개발 파트너 찾으시나요? 개인, 팀, 기업 모두 환영. 문제 정의부터 출시까지 함께합니다.