プログラミングのお題スレ Part22 (831レス)
前次1-
抽出解除 レス栞

621
(3): 02/15(土)21:06 ID:rssRTGdz(3/9) AAS
>>561
C++
外部リンク:ideone.com
C#のヌル許容型と同じ挙動のnullable型を自作し、>>593のC#のmin2関数をジェネリック化、
ポインタ参照化して移植した。

外部リンク:ideone.com
593のC++のmin2関数と実行速度を比較する¹と30%ほど遅い。文字列型や可変長数値型と
違って最大値が存在する固定長数値型では、それを利用するf593の方が良い。

──
¹ Microsoft C++では100回繰り返しテストが最適化され1回しか実行されない
622
(1): 02/15(土)21:52 ID:qa0m30Tb(1/4) AAS
>>621
最大値をundefined代わりに使ってはいけないと指摘があったのにまだ使っているのかいな
そのコードで入力数列がこうだった場合
vector<int> a = {IntMax - 1, IntMax};
2番目に小さい数として正解のintMaxを返さなければならない
625
(2): 02/15(土)22:24 ID:rssRTGdz(5/9) AAS
>>624
>>621の速度比較テストに>>570のf3も追加
外部リンク:ideone.com

ポインタで持つf593との比で、整数で持つf570は6%速いだけ。一方、null許容型のf621は29%も遅い。
最大値が存在する型ではそれを利用する方が良いという結論に変わりはない。
632: 02/15(土)23:52 ID:rssRTGdz(9/9) AAS
>>630
>>621に書いた通り、C#のヌル許容型T? (Nullable<T>のエイリアス) の挙動に従っただけだから。
文句があるならMicrosoftに言ってくれ。
前次1-
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル

ぬこの手 ぬこTOP 1.948s*