프로그램 최적화: 두 판 사이의 차이

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