Data Structure
- 자료를 효율적으로 사용하기 위해, 자료의 특성에 따라 따라 분류하여 구성하고 저장 및 처리하는 모든 작업
- 컴퓨터 내에서 자료 표현의 구조적 추상화(Abstract Data Type)
Algorithm
- 문제 해결 절차. 처리 방법을 체계적으로 기술한 것
- 문제 해결 방법을 추상화하여 각 절차를 논리적으로 기술해 놓은 명세서
추상화란(abstraction)?
- 뇌의 추상화 기능: 기억할 대상의 구별되는 특징만을 단순화하여 다시 이용할 수 있도록 기억하는 기능
- 사전적 정의: 중요한 특징을 찾아내 단순하게 표현한 것
- 컴퓨터를 이용한 문제해결에서의 추상화: 복잡한 문제를 단순화시켜 해결하고, 다른 문제에도 적용할 수 있게 하는 방법
Data Structure와 Algorithm의 궁극적 목표:
컴퓨터가 효율적으로 문제를 해결하도록 문제를 정의, 분석, 해결하기 위한 최적의 프로그램을 작성하는 것
--> 문제 자체를 해결하는 방법을 학습, 생각하는 방법 학습, 다른 문제에 해결법을 적용하는 방법 학습