프로그램 최적화: 두 판 사이의 차이
내용 삭제됨 내용 추가됨
편집 요약 없음 태그: m 모바일 웹 |
잔글 봇: 틀 이름 및 스타일 정리 |
||
3번째 줄:
== 기본 ==
계산 작업은 여러 방식에 따라 효율성이 달라진다. 이를테면, 1에서 N까지의 모든 정수를 합하는 다음의 [[C 언어|C]] 코드를 보라.
<
int i, sum = 0;
for (i = 1; i <= N; i++)
sum += i;
printf ("합: %d\n", sum);
</syntaxhighlight>
아래의 코드는 수학 공식을 사용하여 다시 구성한 것이다: ([[산술 오버플로우]]가 없다는 가정 아래)
<
int sum = (N * (N+1)) / 2;
printf ("합: %d\n", sum);
</syntaxhighlight>
그러므로, 자동으로 완료되는 최적화는 비록 둘 다 기능이 똑같이 수행되지만 계산하기에 더 효과적인 방식을 채택하는 것이다. 그러나 성능 상의 중대한 개선은 실제 문제만 해결하고 부가되는 기능을 제거함으로써 이룩할 수 있다.
|