ComputerScience

[자료구조] 자료구조와 알고리즘이란?

NukeOlaf 2020. 7. 14. 21:55

1. 자료구조란?

- 대량의 데이터를 효율적으로 관리할 수 있는 데이터의 구조

- 코드상에서 효율적으로 데이터를 처리하기 위해, 데이터의 특성에 따라 체계적으로 데이터를 구조화해야 한다.

=> 어떤 데이터 구조를 사용하느냐에 따라, 코드 효율이 달라진다

ex) 우편번호, 학생관리...

 

2. 대표적인 자료구조

(1) 배열

(2) 스택

(3) 큐

(4) 링크드 리스트

(5) 해쉬 테이블

(6) 힙 ... 등등

 

3. 알고리즘이란?

- 어떤 문제를 풀기 위한 절차/방법

- 어떤 문제에 대해, 특정한 '입력'을 넣으면, 원하는 '출력'을 얻을 수 있도록 만드는 프로그래밍

- 얼마의 시간과 저장용량을 사용하느냐에 따라 좋은 알고리즘인지 아닌지가 판별

 

4. 자료구조와 알고리즘이 중요한 이유

- 어떤 자료구조와 알고리즘을 쓰느냐에 따라 성능이 천지차이