[알고리즘] 정의와 요건

2018. 5. 19. 13:15・CS/Algorithm

#1 정의


알고리즘(Algorithems)은,

주어진 문제에 대해 결과를  도출하기 위해, / 모호하지 않고 / 간단하며 / 컴퓨터가 수행 가능한 유한 개의 일련의 명령들을 '순서대로' 구성한 것


#2 조건


알고리즘의 조건,

  • 입출력(input & output) : '0개 이상의 외부입력 + 하나이상의 출력' 필요
  • 명확성(definiteness) : 각 명령은 모호하지 않고 '단순 명확'할 것
  • 유한성(finiteness) : 한정된 수의 단계 후에 '반드시 종료'할 것
  • 유효성(effectiveness) : 모든 명령은 '실행가능' 할 것

추가로,

실용적 관점에서, 알고리즘의 효율성도 충분히 고려되고 만족되어야 할 조건!


#3 생성단계


알고리즘 생성단계,

  1. 주어진 문제의 출력 및 처리조건 고려하여 문제분석
  2. 이를 토대로 설계 수행


#4 결론


어떤 문제가 주어졌을 때, 그 문제를 푸는 방법과 절차를 찾는 것에만 국한되지 않고, 

그 방법이 정확하고 얼마나 효율적인 가를 분석하는 과정이 반드시 수반되어야 할 것


저작자표시 비영리 (새창열림)

'CS > Algorithm' 카테고리의 다른 글

[알고리즘] 순환알고리즘의 성능  (0) 2018.05.28
[알고리즘] 점근성능  (0) 2018.05.28
[알고리즘] 시간복잡도 (time complexity)  (0) 2018.05.28
[알고리즘] 순차탐색, 이진탐색  (0) 2018.05.28
[자료구조] 정의 / 알고리즘과 관계 / 기본적인 자료구조  (0) 2018.05.19
'CS/Algorithm' 카테고리의 다른 글
  • [알고리즘] 점근성능
  • [알고리즘] 시간복잡도 (time complexity)
  • [알고리즘] 순차탐색, 이진탐색
  • [자료구조] 정의 / 알고리즘과 관계 / 기본적인 자료구조
dev.hyejin
dev.hyejin
  • dev.hyejin
    혜진의 개발자 성장블로그
    dev.hyejin
  • 전체
    오늘
    어제
    • 분류 전체보기 (89)
      • 2024 데브캠프 (2)
      • 회고 (1)
      • 이슈해결 (3)
      • 기초학습 (13)
      • Frontend (20)
        • JavaScript (3)
        • Git, GitHub (3)
        • HTML, CSS (14)
      • Backend (8)
        • Database (4)
        • Java (4)
      • CS (16)
        • Network (10)
        • Algorithm (6)
      • Eng (16)
      • Tips (5)
  • 인기 글

  • 태그

    절대경로
    ER모델
    border-box
    box-sizing
    점근성능
    GitHub
    시간복잡도
    런타임
    객체
    상대경로
  • hELLO· Designed By정상우.v4.10.3
dev.hyejin
[알고리즘] 정의와 요건
상단으로

티스토리툴바