- ベストアンサー
ソートにかかった時間を測りたい。
初心者です。クイックソートとか挿入ソートとかのかかる時間を測るためにはどうしたらいいでしょうか?かかった時間を表示させるプログラムを書くのは可能でしょうか??宜しくお願いします。
- みんなの回答 (4)
- 専門家の回答
質問者が選んだベストアンサー
↓私はこのような形式をよく使っています #include <stdio.h> #include <stdlib.h> #include <time.h> int main(void) { clock_t start, end; start = clock(); //ここに測定したいコードを書く end = clock(); printf("%7.3f秒", (double)(end - start) / CLOCKS_PER_SEC); return EXIT_SUCCESS; }
その他の回答 (3)
- f_attck
- ベストアンサー率33% (40/118)
Linuxならtimeコマンドを使うとか ソース中にgettimeofday()を埋め込んで 計測するのはどうでしょう 誤差を気にされるのでしたら、gettimeofday()を ソースに埋め込んで数万回実行後、1回あたりの 実行時間を計算すれば良いのではないでしょうか
お礼
とても参考になりました!ありがとうございました!
- neuron-x
- ベストアンサー率52% (139/266)
GetTickCount()という、ミリ秒単位で時間を計測できるAPIを使うと良いでしょう。(数msの誤差はありますが) GetTickCount()は、Windowsが起動してからの時間をmsで返します。なので、処理の前後でGetTickCount()を呼ぶことで、処理時間を求められます。 DWORD start = GetTickCount(); // 計測したい処理 DWORD end = GetTickCount(); DWORD cost = end-start; // 処理にかかった時間(ms)
お礼
とても参考になりました!ありがとうございました!
- tekuteku123
- ベストアンサー率21% (5/23)
開発環境がわからない為、一例をあげます。 time 関数を前後にはさんで、その差で値を計測 する。 または、unix 系であれば、gettimeofday 関数を 用いて計測する。 こういった形が一般的だと思います
お礼
とても参考になりました!ありがとうございました!
お礼
とても参考になりました!ありがとうございました!