자료구조란?
- 자료구조, 데이터 구조, Data Structure
- 대량의 데이터를 효율적으로 관리할 수 있는 데이터의 구조를 의미
- 코드상에서 효율적으로 데이터를 처리하기 위해, 데이터의 특성에 따라, 체계적으로 데이터를 구조화해야 함
- 어떤 데이터 구조를 사용하느냐에따라, 코드의 효율이 달라진다!!
- data structure = 현실에 존재하는 어떠한 형태를 프로그래밍적으로 표현하는 것.
대표적인 자료구조
배열, 스택, 큐, 링크드 리스트, 해쉬 테이블, 힙 등...
알고리즘이란?
-
알고리즘, algorithm
-
어떤 문제를 풀기 위한 절차/방법
-
어떤 문제에 대해, 특정한 '입력'을 넣으면, 원하는 '출력'을 얻을 수 있도록 만드는 프로그래밍
-
얼마의 시간이 걸리느냐, 얼마의 저장공간을 활용하느냐? 가 중요함
→ 어떤 알고리즘을 선택하느냐에 따라 달라진다.
자료구조와 알고리즘이 왜 중요한가요?
- 어떤 자료구조와 알고리즘을 쓰느냐에 따라 성능이 천지차이다!!!