프로그래밍[Univ]/데이터구조

[데이터 구조]알고리즘

Cloud Travel 2009. 4. 12. 17:31
1. 알고리즘
  : 주어진 문제를 해결하기 위한 방법. 절차
  : 적절한 수준으로 기술 ( 너무 자세히 X, 추상적 X )
  : 정확성이 중요! > 인류의 존망을 논할 수도 있다.

2. 오류
 1) Syntax Error //문법적 오류
 2) Semantic Error //논리 오류
 3) Algrithmic Error //문제 푸는 형식의 오류

3. 효율성
 1) 여러곳에서 사용이 가능해야된다.
 2) 점근적 복잡도
  : 실제 환경과 무관하게 개략적으로 분석
  : 입력데이터의 수 : N개
  : 실행에 걸리는 시간을 N의 함수로 표시
   >>입력값(N)이 클 때 빠른 것이 더욱 효율적이다.
   >>따라서, N의 값을 충분히 크게해야된다.
 3) 복잡도
  : 총 실행시간
  : 식으로 나타냈을 대 차수가 낮은 것이 효율적이다.
 4) 빅오기호
  : 최악의 경우를 나타낼때 사용
  : N >= N0 , g(N) <= c*f(N) , c > 0
   >>N0와 C가 존재하면 g(N)은 f(N)의 빅오라고 한다.
  : if문등 분기문에 의해 생긴 여러가지 복잡문이 나오면 최악의 복잡도를 따른다.
  : 대부분 g(N)은 f(N)의 최고차를 따라간다.

>> 빅오에 관한 여러가지 예는 나중에 올리기로 하겠다. ( 스케너 고장 ㅠ_ㅜ )