[자료구조DataStructure]자료구조와 알고리즘 차이, 배열
💡 핵심 요약 (TL;DR)
'자료구조와 알고리즘 차이, 배열'에서 다루는 각 기술의 핵심 개념과 동작 방식의 차이점을 분석한 내용이다. * 특징 : 크기가 정해져있다. 기능이 없다.
자료구조와 알고리즘
- 자료구조(data structure) : 데이터를 효율적으로 사용하기 틀이다. 이러한 효율성은 시간 복잡도(time complexity)와 공간 복잡도(space complexity) 기준으로 평가된다.
- 시간 복잡도란, 해당 자료구조의 시간 효율성의 척도이며 작을 수록 좋은 자료구조이다.
- 공간 복잡도란, 해당 자료구조의 공간 효율성의 척도이며 작을 수록 좋은 자료구조이다.
- 알고리즘 : 어떤 값을 입력으로 받아 원하는 값으로 출력하는 잘 정의된 계산 과정이다. 알고리즘 효율성은 실험적 분석방법과 이론적 분석방법으로 분석가능하다. 이론적분석시 가장 대표적인 것이 빅오표기법이다.
- 실험적 분석 : 직접 코드를 구현하는 분석방법으로 한계가 있기때문에 이론적 분석방법을 이용한다.
- 이론적 분석 : 빅오표기법
- 자료구조와 알고리즘의 관계 : 효율적인 알고리즘을 만들기 위해 필요한 것이 자료구조이다.
배열
- 여러 데이터를 하나의 이름으로 그룹핑해서 관리하기 위해 사용하는 자료구조
- 배열의 구성 = element의 집합, element = index + value

- 특징 : 크기가 정해져있다. 기능이 없다.
- 작고 가볍고 단순하다. 즉 좋은 부품으로 사용할 수 있다.
요약
- 자료구조 : 데이터를 효율적으로 조직하는 방법
- 알고리즘 : 문제를 해결하는 방법
- 자료구조와 알고리즘의 관계 : 효율적인 알고리즘을 만들기위해 자료구조가 필요하다.
참고
[자료구조DataStructure]자료구조와 알고리즘 차이, 배열
https://sowon-dev.github.io/2020/12/06/201207dataStructure1/