Algorithm(알고리즘에 대해)

RingKim1·2024년 4월 24일

algorithm

목록 보기
1/18
post-thumbnail

📌Algorithm

Algorithm

수학과 컴퓨터과학에서 사용되는, 문제 해결 방법을 정의한 '일련의 단계적 절차'이자 어떠한 문제를 해결하기 위한 '동작들의 모임'이다. 계산을 실행하기 위한 단계적 규칙과 절차를 의미하기도 한다. 즉, 문제 풀이에 필요한 계산 절차 또는 처리 과정의 순서를 뜻한다. 프로그램명령어의 집합을 의미하기도 한다.
위키백과

간단히 말하자면, 어떤 문제를 해결하려는 일련의 절차를 표현한 것.


어원

알콰리즈미가 집대성한 연산 기술의 이름으로부터 유래한 것인데, 알콰리즈미의 라틴어 이름을 딴 것

알콰리즈미
페르시아의 수학자로 페르시아 최초의 수학책을 만들었는데, 인도에서 도입된 아라비아 숫자를 이용하여 최초로 사칙연산(덧셈, 뺄셈, 곱셈, 나눗셈)을 만들고 0과 위치값을 사용한 수학자


알고리즘의 표현

  1. 자연어(natural language)
  • 사람이 일상생활에서 의사소통을 위해 쓰는 말

  1. 순서도(flow language)
  • 프로그램이나 작업의 진행 흐름을 순서에 따라 여러 가지 기호나 문자로 나타낸 도표
  • 프로그램의 논리적인 흐름이나 데이터의 처리 과정을 표현하는데 사용


  1. 프로그래밍 언어
  • 컴퓨터가 인식할 수 있도록 하는 도구

  1. 의사 코드
  • 프로그램을 작성할 때 각 모듈이 작동하는 논리를 표현하기 위한 언어
  • 다른 프로그램 개발자나 이용자에게 모듈이 하는 일과 작동 원리를 설명하는 데 쓰임.

좋은 알고리즘?

좋은 알고리즘과 나쁜 알고리즘을 구분하는 기준은 효율성

  1. 메모리 (저장 공간)
  2. runnig time (소요 시간)

속도가 빠르고 효율적인 것은 물론,
이해하기 쉽거나 재이용하기 쉬우면 좋은 알고리즘에 해당한다.


Feedback

좋은 알고리즘을 위해 많은 알고리즘을 접하고 기본적인 코드 실력을 늘려야 겠다.


참고자료
Algorithm Analysis

profile
커피는 콜드브루

0개의 댓글