자료구조란 특정한 상황에 데이터를 효율적으로 다루는 방법들 자바는 stack만 구현돼 있고 나머지는 인터페이스만 있음 Stack 선입후출 데이터를 하나씩 넣고 뺌 하나의 입출력 방향 재귀함수 ex) 브라우저 뒤로가기, 스택메모리 Queue 선입선출 데이터를 하나씩 넣고 뺌 두개의 입출력 방향 ex) 일상에서 대기줄, 인쇄대기 원형큐 Tree 단방향 그래프 하나의 뿌리로부터 가지가 뻗는 형태 비선형구조 레벨, 깊이, 부모노드, 자식노드, 형제노드, 리프, 루트 ex) 폴더 구조 Graph 여러 개의 점들이 서로 연결되어 있는 관계를 표현한 자료구조 직접적인 관계/ 간접적인 관계 정점(vertex), 간선(edge) 인접행렬, 인접 리스트 (인접 리스트는 메모리를 효율적으로 사용) 방문여부를 표시하는 데이터..