プロが教えるわが家の防犯対策術!

初心者です。クイックソートとか挿入ソートとかのかかる時間を測るためにはどうしたらいいでしょうか?かかった時間を表示させるプログラムを書くのは可能でしょうか??宜しくお願いします。

A 回答 (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;
}
    • good
    • 2
この回答へのお礼

とても参考になりました!ありがとうございました!

お礼日時:2006/02/09 14:45

Linuxならtimeコマンドを使うとか


ソース中にgettimeofday()を埋め込んで
計測するのはどうでしょう

誤差を気にされるのでしたら、gettimeofday()を
ソースに埋め込んで数万回実行後、1回あたりの
実行時間を計算すれば良いのではないでしょうか
    • good
    • 0
この回答へのお礼

とても参考になりました!ありがとうございました!

お礼日時:2006/02/09 14:45

GetTickCount()という、ミリ秒単位で時間を計測できるAPIを使うと良いでしょう。

(数msの誤差はありますが)
GetTickCount()は、Windowsが起動してからの時間をmsで返します。なので、処理の前後でGetTickCount()を呼ぶことで、処理時間を求められます。

DWORD start = GetTickCount();
// 計測したい処理
DWORD end = GetTickCount();
DWORD cost = end-start; // 処理にかかった時間(ms)
    • good
    • 0
この回答へのお礼

とても参考になりました!ありがとうございました!

お礼日時:2006/02/09 14:46

 開発環境がわからない為、一例をあげます。



 time 関数を前後にはさんで、その差で値を計測
 する。

 または、unix 系であれば、gettimeofday 関数を
 用いて計測する。

 こういった形が一般的だと思います
    • good
    • 0
この回答へのお礼

とても参考になりました!ありがとうございました!

お礼日時:2006/02/09 14:44

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!


人気Q&Aランキング