プログラミングのお題スレ Part22 (858レス)
プログラミングのお題スレ Part22 http://mevius.5ch.net/test/read.cgi/tech/1691038333/
上
下
前次
1-
新
通常表示
512バイト分割
レス栞
抽出解除
レス栞
リロード規制
です。10分ほどで解除するので、
他のブラウザ
へ避難してください。
643: デフォルトの名無しさん [] 2025/02/17(月) 20:47:46.22 ID:2enU2rA/ >>640 PowerShell (一般的な文字コードを想定) function f([string]$s) { $rprev = 2 -join ([char[]]$s |% { $r = $_ % 2 if ($r -eq $rprev) {$r} $rprev = $r $_ }) } 123346, 12333468, 1, "" |% {"$_ → $(f $_)"} [実行結果] 123346 → 12313406 12333468 → 123131340608 1 → 1 → http://mevius.5ch.net/test/read.cgi/tech/1691038333/643
648: デフォルトの名無しさん [] 2025/02/19(水) 21:30:14.30 ID:LKzHskwz >>640 >>643-644の3つのfを上から順にf1, f2, f3とし、長い文字列を引数として呼び出したときの 実行時間を比較すると、 $s = -join (1..10000) $t = 1..3 |% {(iex "measure-command {f$_ $s}").ticks} $tmin = ($t | measure -min).minimum 1..3 |% {"f$_`: {0:0.00}倍" -f ($t[$_ - 1] / $tmin)} [実行結果の一例] f1: 34.78倍 f2: 1.00倍 f3: 14.93倍 大差でf2 < f3 < f1となった。インタプリタ言語のコード実行は遅いので、処理を自分で 書くほど遅くなり、ライブラリ関数等に丸投げすれば速くなることによる。 https://ideone.com/GVewWL コンパイラ言語のC#で同様の比較をすると (PowerShellより速いので文字列を長くし、 f1の改良版としてStringBuilder使用のf4を追加した)、当然f4< f1 < f2 < f3になった。 http://mevius.5ch.net/test/read.cgi/tech/1691038333/648
メモ帳
(0/65535文字)
上
下
前次
1-
新
書
関
写
板
覧
索
設
栞
歴
スレ情報
赤レス抽出
画像レス抽出
歴の未読スレ
AAサムネイル
Google検索
Wikipedia
ぬこの手
ぬこTOP
0.047s