Algorithm/Theory

Data Structure(자료구조)와 Algorithm(알고리즘)

  • -
728x90

 

Data Structure(자료구조)

  • 컴퓨터 과학에서 효율적인 접근 및 수정을 가능하게 하는 자료의 조직, 관리, 저장을 의미
  • 데이터 값의 모임, 데이터 간의 관계, 그리고 데이터에 적용할 수 있는 함수나 명령을 의미
  • 신중히 선택한 자료구조는 보다 효율적인 알고리즘을 사용할 수 있게 함
  • 효율적인 자료구조란 프로그램의 실행시간 효율과 저장공간 효율을 의미함
  • 각 자료구조의 장단점을 숙지하고 상황별로 적합한 자료구조를 선택하는 능력이 중요

 

 

자료구조의 분류

https://wayhome25.github.io/cs/2017/04/17/cs-18/

  • 단순구조 :  프로그래밍에서 사용되는 기본 데이터 타입
  • 선형구조 :  저장되는 자료의 전후 관계가 1:1 인 구조 (리스트, 스택, 큐 등)
  • 비선형구조: 데이터 항목 사이의 관계가 1:n 또는 m:n인 구조 (트리, 그래프 등)
  • 파일구조 : 서로 관련된 필드들로 구성된 레코드의 집합인 파일에 대한 자료구조

 

Algorithm(알고리즘)

  • 알고리즘이란 어떤 값을 입력으로 받아 원하는 값으로 출력하는 잘 정의된 절차를 말함
  • 어떤 입력을 어떤 출력으로 변환하는 일련의 계산 과정이라 할 수 있음

 

 

자료구조와 알고리즘의 관계

  • 자료구조를 구현하기 위해 알고리즘이 필요함
  • 자료구조의 알고리즘 : 데이터를 저장하고 탐색하는 방법에 대한 방법들
  • 자료구조를 이용한 알고리즘 :  자료구조를 활용하여 어떤 문제를 해결하는 것

 

 

References

https://ko.wikipedia.org/wiki/%EC%9E%90%EB%A3%8C_%EA%B5%AC%EC%A1%B0
https://wayhome25.github.io/cs/2017/04/17/cs-18/
https://blog.yena.io/studynote/2018/11/14/Algorithm-Basic.html

 

728x90
300x250
Contents

포스팅 주소를 복사했습니다

이 글이 도움이 되었다면 공감 부탁드립니다.