A 回答 (6件)
- 最新から表示
- 回答順に表示
No.6
- 回答日時:
#include <time.h>
Sort(); //プロトタイプ
main()
{
time_t stime,etime;
double dtime;
stime = time(NULL);
Sort();
etime = time(NULL);
dtime = difftime(etime,stime);
}
dtimeに秒単位でかかった時間が入ります。
Sortからは余計な処理(画面表示、入力など)は抜くこと。
これでどう?
No.5
- 回答日時:
シェルソートに関しては,アルゴリズムは理解されているように見受けられますので,「書いてみたものこここがうまくいかない」という質問のほうが良いと思います.
もっとも,適当に検索すればそのものズバリのものがいくらでも転がっていますが.
時間獲得の方法に関しては,#4の方のおっしゃる通り環境(OS,コンパイラ)を書いていただかないと何ともいえません.
この回答への補足
シェルソートに関しては完成、かつ正常に動きましたので大丈夫です。
OSはWindowsXP、コンパイラはbcc32.exeです。環境によって方法等も変わってくるものなのでしょうか?
No.4
- 回答日時:
環境によるのかな……
そのプログラム(関数)の実行前後でtimeを取って、その差を見るのは出来ない?
No.3
- 回答日時:
補足を2点ほどお願いします。
(1)シェルソートのプログラムその物は既にあるのですよね?
(2)No.2の補足に「具体的な数列を与えてそれをソートするためにかかった時間」とありますが、求めたいのは時間でよいですか?(比較回数/交換回数ではなく。)
この回答への補足
>(1)シェルソートのプログラムその物は既にあるのですよね?
一応、それらしき物は作っていますが、できればお願いします
>(2)No.2の補足に「具体的な数列を与えてそれをソートするためにかかった時間」とありますが、求めたいのは時間でよいですか?(比較回数/交換回数ではなく。)
時間のみです。
かなりお手数をおかけしていますが、よろしくお願いします
No.2
- 回答日時:
うーん,やはりいまいちよくわかりません.
とはいってもいくつかの予測はつきますが.
まず,「シェルソートの計算量を求める」と言ったばあい,具体的な数列を与えてそれをソートするためにかかった時間や比較回数,交換回数を出力する,ということではなくて.
最悪の場合nに対してこれだけの時間がかかる,平均的にはこれだけの時間がかかる,というこを数学的に示すことを指します.
質問者さまのおっしゃりたいことは前者だと思いますが,いかがでしょう?
> 降順に並べた整数の列をシェルソートで並び替えた
文字通りに解釈すると
「降順に並んでるんだったらソートしなくてもいいじゃん」
となります.
整数の列を,降順にソートするのですか?
この回答への補足
>「シェルソートの計算量を求める」と言ったばあい,>具体的な数列を与えてそれをソートするためにかかっ>た時間や比較回数,交換回数を出力する,ということ>ではなくて.最悪の場合nに対してこれだけの時間が
>かかる,平均的にはこれだけの時間がかかる,という>こを数学的に示すことを指します.
すいません。すっかり勘違いしてしまいました。「具体的な数列を与えてそれをソートするためにかかっ>た時間」を求めるプログラムです。「シェルソートの計算量を求める」ですと最悪計算量O(n^2)になってしまいますね。。
> 降順に並べた整数の列をシェルソートで並び替えた
>文字通りに解釈すると「降順に並んでるんだったらソ>ートしなくてもいいじゃん」となります.
うまく説明できないので例を・・・
5 4 3 2 1
↓並び替え
1 2 3 4 5
こういった形で結果を導き出したいのですが。。。
どうでしょうか?
No.1
- 回答日時:
> 計算量はどうなるのか
シェルソートの最悪計算量は O(n^2) です.
それを求めるプログラムを作るのですか?
> nから降順で並べたソートをシェルソートで並び替える
というのもいまいち意味がわかりません.
この回答への補足
すいません。かなり言葉が足りていないようです。
> 計算量はどうなるのか
降順に並べた整数の列をシェルソートで並び替えた場合の計算量を導き出すというプログラムを作りたいです。
> nから降順で並べたソートをシェルソートで並び替える
整数の列の例ということで書いてました。無視してください。
分かりにくい補足ですが、お願いします。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- 計算機科学 アルゴリズムについて 1 2023/01/01 19:43
- Visual Basic(VBA) Excel VBAで並べ替えをしたい 3 2023/02/25 09:31
- C言語・C++・C# C言語 3 2022/10/04 15:07
- C言語・C++・C# C++で割り算の結果を昇順に出力するプログラムを作りたいのですが、例えば(double)100000 3 2022/07/15 17:46
- C言語・C++・C# C言語プログラム変更 2 2022/12/21 15:03
- Excel(エクセル) Excelのソート(並べ替え) 2 2022/05/15 22:54
- C言語・C++・C# C言語で移動平均のプログラムを作りたいのですが、数値をファイルから取ってきて計算をするプログラムはど 1 2022/09/29 01:21
- JavaScript jsonテキストデータの並び替えができるサービスを教えてください 2 2022/08/05 20:16
- Excel(エクセル) Googleスプレッドシートの割合の関数と円グラフの並べ替えについて 1 2022/07/22 17:31
- Ruby 初心者プログラミング 3 2022/10/12 11:31
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
System.IO.Directory.GetFiles...
-
VB.NETでファイル名順にファイ...
-
数字文字列のソート方法
-
列のどこをクリックしてもソー...
-
ファイル名「1.jpg ~10.jpg~...
-
多次元配列のソート方法
-
C++ 入力した3つのint型の整数...
-
Excel VBAで並べ替えをしたい
-
mysqlで日本語の並び替え
-
構造体配列のソート
-
2次元配列を複数項目でソートし...
-
VBA基本構文の作り方 2列の...
-
sortの優先キーについて(スプレ...
-
C言語でアナグラムを求めるプロ...
-
C# DataGridView のヘッダーセ...
-
C# DataTable ソートについて
-
Excelですべての組合せ(重複組...
-
Fortran77で多次元配列を並び替...
-
EXCEL VBAのソートについて
-
VBAのプログラムで、DIAG = 1# ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
System.IO.Directory.GetFiles...
-
VB.NETでファイル名順にファイ...
-
列のどこをクリックしてもソー...
-
ファイル名「1.jpg ~10.jpg~...
-
Excelですべての組合せ(重複組...
-
あるディレクトリ内のファイル...
-
C# DataTableの行をソートしてD...
-
DataGridViewの複数列を連動し...
-
C# DataGridView のヘッダーセ...
-
excel VBA の条件をつけての列...
-
2次元配列を複数項目でソートし...
-
VBScriptで重複レコードを削除...
-
excel VBA リストビューの行...
-
Excel VBA テキストボックス内...
-
vbでDataTableの抽出コピー
-
リスト構造のソートで悩んでま...
-
多次元配列のソート方法
-
構造体のリストをソートしたい。
-
PHPでファイル一覧を取得して開...
-
C言語・要素除去
おすすめ情報