[자료구조] 알고리즘의 개념, 요건, 표현 + ADL 정의, 규칙

Romy·2022년 4월 18일
0

✅ 알고리즘


  • 정의

    • 특정 문제를 해결하기 위해 기술한 일련의 명령문
  • 요건

    1. 완전성과 명확성

      : 수행 단계와 순서가 완전하고, 명확하게 명세되어야 함

      : 알고리즘을 실행하면 의도한 결과가 얻어져야 함

    2. Input과 Output

      : Input = 알고리즘이 처리해야 할 대상

      : Output = Input Data를 처리하여 얻은 결과물

    3. 유한성

      : 유한한 단계 뒤에는 반드시 종료

  • vs Program

    • 알고리즘을 컴퓨터가 이해하고, 실행할 수 있는, 특정 프로그램 언어로 표현된 것
    • Program = Data structure + algorithm

ADL (Algorithm Description Language)


  • 정의
    • Algorithm 기술을 위해 정의한 Language

    • 사람이 이해하기 쉽고, 프로그램 언어로의 변환이 용이

    • 특정 프로그래밍 언어가 아니므로 직접 실행은 불가능

    • pseudo-code : ADL + 약간의 자연어로 기술한 것

      프로그래밍 언어의 일반적인 형태와 유사하게 알고리즘을 표현한 것


  • 명령문 종류
    • 지정문 : 변수 ← 식
    • 조건문 : if문, case문
    • 반복문 : while문, for문, do-while문
    • 함수문 : 함수이름(매개변수)
    • Input/Output 문 : read, print
    • 기타 : stop(함수 실행 정지), 주석, 배열

  • 기술 규칙
    • 함수의 Input Output 변수 명확히 명세
    • 변수의 의미 알 수 있게 정의
    • 알고리즘의 제어 흐름은 되도록 순차적으로 정의
    • 시각적 구분을 위해 들여쓰기 이용
    • 코멘트는 짧고 의미 명확하게
    • 함수를 적절히 사용
profile
👩‍💻 IT Engineering

0개의 댓글