# 자료구조란 데이터는 분석하고 정리하여 활용해야한 의미를 가지며 사용목적에 따라 형태를 구분하고 분류하는 것이 좋다. 그렇기 때문에 저장공간에 있는 data를 효율적으로 [읽기, 쓰기, 삽입, 삭제, 탐색] 하기 위해서 여러 데이터들의 묶음을 저장하고 사용하는 방법을 정의한 것이다. # 알고리즘 시간복잡도 알고리즘이란? - input을 output으로 전달하는 잘 정리된 절차, 문제를 해결하는 잘 정의된 절차 가상 컴퓨터 + 가상 언어 + 가상 코드 RAM model = CPU + memory + 기본 연산 (단위시간에 수행되는 연산) 기본연산 - 배정, 대입, 복사, 산술 연산, 비교 연산, 논리 연산, 비트 연산 알고리즘의 수행 시간 = 최악의 경우의 입력에 대한 기본 연산 횟수 # 표기법 big-..