世の中80:20で動いていることが多いというのが表題にある80:20の法則といい、これを提唱した人の名前がついていてパレート則といいます。
これが何を示しているかというと…、
「実行時間の80パーセントは20パーセントのプログラム部分で消費される」
ということなのです。
実際にそれっぽいコードを書いてみましょう。
…と言っても前と同じコードの使い回しです。
003-1.c
1 #include<stdio.h>
2 #define N 1000000
3 int main(int argc,char *argv[])
4 {
5 int my,i,A[N];
6
7 for (i = 0 ; i < N ; i++)
8 A[i]=i;
9 return 0;
10 }
どうでしょう、この中で一番実行時間を消費しているのはforループであることは明白ですね。10行のうちこの2行で全体の大半を消費しているので、80:20といわず95いや99%はこの2行で消費されるといっても良いでしょう。
要するに、この実行時間の99%を消費しているforループをなんとか速くできれば、高速化を実現できるわけです。