본문 바로가기
Algorithm

자바로 배우는 쉬운 자료구조_리뷰_3

by Davidev 2021. 9. 2.
반응형

 

 

 

<알고리즘>

 

  • 문제를 해결하기 위한 논리적 흐름.
  • 서술어, 순서도, 프로그램 언어, 가상코드로 표현이 가능하다. 주로 순서도를 이용한다.

 


 

 

<알고리즘의 분석 기준>

 

  • 알고리즘 또한 효율성을 추구한다.
  • 보기 쉽고, 메모리와 시간을 적게 쓰면서 처리할 수 있는 데이터가 많고, 정확한 결과를 도출한다면 좋은 알고리즘. (공간복잡도 & 시간복잡도의 개념이 포함되어 있다.)

 


 

 

 

<공간복잡도>

 

  • 프로그램을 실행하는데 필요한 총 저장공간.
  • 고정 공간 + 가변 공간
  • 프로그램을 저장하는 공간, 변수 및 상수들을 저장하기 위한 공간.
  • 실행 과정에서 사용되는 데이터, 변수 및 관련 정보를 저장하는 공간.

 

 

<시간복잡도>

 

  • 프로그램을 이용해 알고리즘을 완료하는데 걸리는 시간
  • 컴파일 시간 + 실행 시간
  • 프로그램의 특성과 큰 관계없는 고정된 시간. 고려요소 아님.
  • 실행 빈도 수를 이용해 알고리즘간 비교. (***Big O 표기법으로 시간복잡도를 나타낸다.)

 

 


 

***Notion 링크_Big O 표기법 정리 내용

https://pattern-surgeon-d2e.notion.site/Big-O-86b2c02e053a44c78db32d223497d35a

 

Big O 표기법

* 기본 개념

pattern-surgeon-d2e.notion.site

 


 

 

 

 

<느낀 점>

 

알고리즘의 포인트는 컴퓨터를 이용해 문제를 해결하는 것 인데,

'경영'과 비슷하게 불필요한 비용을 줄이고 효용을 극대화 하는 것.

개념 자체는 이해하기 다소 쉬운편인듯 하다. 

반응형

'Algorithm' 카테고리의 다른 글

Java의 일꾼 'JVM'  (0) 2021.09.03
자바로 배우는 쉬운 자료구조_리뷰_2  (0) 2021.08.30
자바로 배우는 쉬운 자료구조_리뷰_1  (0) 2021.08.30

댓글