[表示 : 全て 最新50 1-99 101- 201- 301- 2chのread.cgiへ]
Update time : 05/09 19:19 / Filesize : 83 KB / Number-of Response : 367
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

プログラミングの為の数学と算数 vol.3



1 名前:デフォルトの名無しさん mailto:sage [2007/12/08(土) 06:30:23 ]
プログラムに必要な数学、算数に関する話題について語りましょう。
TIPS/Q&Aスレです。
宿題は自分で解き終わってから持ってきましょう。

前:プログラミングの為の数学と算数 vol.2
pc11.2ch.net/test/read.cgi/tech/1094368921/

91 名前:デフォルトの名無しさん mailto:sage [2008/01/21(月) 02:10:44 ]
>>90
kwskお願いします

92 名前:デフォルトの名無しさん mailto:sage [2008/01/21(月) 02:48:27 ]
1から100までの数を全部足すと
S = 1 + 2 + .... + 99 + 100
S = 100 + 99 + ... + 2 + 1

2S = 101 + 101 + ... + 101 + 101

2S = 101 x 100 = 10100

S = 5050

では1から101までの数を全部足すといくつですか?


93 名前:デフォルトの名無しさん mailto:sage [2008/01/21(月) 02:48:55 ]
5050 + 101 = 5151

94 名前:デフォルトの名無しさん mailto:sage [2008/01/21(月) 03:12:48 ]
>>91
等比級数の総和とかやらんかった?
1 + r + r^2 + r^3 + ... + r^n を求めるとか。
こんなやつ。

M = 1 + r + r^2 + r^3 + ... + r^n
rM =    r + r^2 + r^3 + ... + r^n + r^(n+1)

rM-M = r^(n+1) - 1
∴ M = {r^(n+1) -1} / (r-1)

r=1/2なら解き方も全部そのままなんだけどさ。
まだ習ってないっていうなら、そのうち習う。
文系だとやらんかもしれんけど、そんときは数学の先生に聞いてみるといい。

95 名前:デフォルトの名無しさん mailto:sage [2008/01/21(月) 03:14:50 ]
-100 x -99 x .... x 99 x 100
を求めなさい


96 名前:デフォルトの名無しさん mailto:sage [2008/01/21(月) 03:16:28 ]
>>86
N + N/2 + N/4 + N/8 + ... = N (1 + 1/2 + 1/4 + 1/8 + ...) → 2N

97 名前:デフォルトの名無しさん mailto:sage [2008/01/21(月) 03:16:50 ]
>>95
0

98 名前:デフォルトの名無しさん mailto:sage [2008/01/21(月) 03:42:32 ]
1/2! - 1/3! + 1/4! - 1/5! ....

99 名前:デフォルトの名無しさん mailto:sage [2008/01/21(月) 03:44:00 ]
>>98
わからん。計算方法まとめてあるページ教えて。



100 名前:デフォルトの名無しさん mailto:sage [2008/01/21(月) 04:20:46 ]
連分数?

101 名前:デフォルトの名無しさん mailto:sage [2008/01/21(月) 07:32:51 ]
テイラー展開だろ

102 名前:デフォルトの名無しさん mailto:sage [2008/01/21(月) 07:37:57 ]
e^x = 1 + x + x^2/2! + x^3/3! + x^4/4! + x^5/5! + ...
∴ e^-1 = 1 - 1 + 1/2! - 1/3! + 1/4! - 1/5! + ... = 1/2! - 1/3! + 1/4! - 1/5! ....

103 名前:デフォルトの名無しさん mailto:sage [2008/01/21(月) 08:16:06 ]
べき乗に「^」使う人良く見かけるけど
何でなんだろうね
CだとXORの記号なのに
漏れはx**yの方が好み


104 名前:デフォルトの名無しさん mailto:sage [2008/01/21(月) 08:19:32 ]
google 電卓も ^ がべきだし Excelがそうなってるからだね

105 名前:デフォルトの名無しさん mailto:sage [2008/01/21(月) 10:33:01 ]
数学板とかでは TeX 書式準拠だしね、数式。
^ はベキ。

106 名前:デフォルトの名無しさん mailto:sage [2008/01/21(月) 11:25:51 ]
ASCIIの '^' は、上向き矢印(↑)だったことがあるから

107 名前:デフォルトの名無しさん mailto:sage [2008/01/21(月) 11:27:40 ]
あと、BASICでも^をべき乗に使っているものがある。
**はFORTRAN由来。

108 名前:デフォルトの名無しさん mailto:sage [2008/01/21(月) 11:30:53 ]
POWER(x,y)が好み

109 名前:デフォルトの名無しさん mailto:sage [2008/01/21(月) 14:40:55 ]
>ASCIIの '^' は、上向き矢印(↑)だったことがあるから
ASR33 (TTY) だったっけ?
言語としては APL かな?



110 名前:デフォルトの名無しさん mailto:sage [2008/01/21(月) 17:39:28 ]
ていうか「**」のほうが少数派だよな

111 名前:デフォルトの名無しさん mailto:sage [2008/01/21(月) 18:39:35 ]
FORTRAN やら Ruby やら gnuplot やらは ** だな。
俺は TeX 的に ^ を使う派だが。

112 名前:デフォルトの名無しさん [2008/01/21(月) 20:43:47 ]
log(n!)の近似値っていくつでしたっけ?

113 名前:デフォルトの名無しさん mailto:sage [2008/01/21(月) 21:08:27 ]
スターリングの公式

114 名前:48 mailto:sage [2008/01/24(木) 02:25:40 ]
以前、2本の回帰直線が交差するようなデータを近似しようとして
質問した者です。

当初やろうとしていたサンプルが少ない場合ですと、>>49の方法が
思っていたより高速でした。時間さえあれば3直線や4直線でも
近似できそうです。ただ、高速化のテクニックが不足しているせいか
サンプル数が増えていくと辛くなってきました。

で、つい先ほどハフ変換の仮実装が完了しました。
資料見ながら6時間もかかりましたが、とりあえず誤差無しの画像データに
うまくフィットする形で直線を表示するところまできました。

画像みたいに点だらけだと楽なのですが、サンプル少ない&誤差が
あるときのデータの誤魔化し方などは考え中です…

ハフ変換は、おそらく統計学での回帰分析や主成分分析、
クラスタリング処理等と何かしら対応関係があるような気がします。
統計学はまだ学習中ですが、なんとか理解していきたいです。

115 名前:デフォルトの名無しさん mailto:sage [2008/01/24(木) 02:42:54 ]
おお
時期的にもしかして卒論?
がんばれ

116 名前:デフォルトの名無しさん mailto:sage [2008/01/24(木) 12:03:52 ]
>>114
ちなみに、↓こんなのが。
ttp://d.hatena.ne.jp/ufcpp/20080120/1200806676

ハフ変換って↓これよね。
ttp://mikilab.doshisha.ac.jp/dia/research/person/shuto/research/0626/tyokusen.html
(ρ, θ) 平面上の曲線の交点をクラスタリングすればそれっぽい結果が得られそうな気がする。

117 名前:デフォルトの名無しさん mailto:sage [2008/01/24(木) 23:15:09 ]
すげえ
やっぱ技術のある人はすごいな

>>116の上のこのソースって言語何?

118 名前:デフォルトの名無しさん mailto:sage [2008/01/24(木) 23:20:48 ]
C#だろ

119 名前:デフォルトの名無しさん mailto:sage [2008/01/24(木) 23:44:26 ]
あーそうなのか
拡張子知らなかったわ
d



120 名前:デフォルトの名無しさん mailto:sage [2008/01/25(金) 09:29:40 ]
誤差を最小にするんじゃなくて、一致度を最大にするような定義にしたらどうなのかな
Σexp(-(x-Xn)^2) が最大になるというような定義



121 名前:デフォルトの名無しさん mailto:sage [2008/01/26(土) 02:03:21 ]
>>116が顔文字だと思った人の数

122 名前:デフォルトの名無しさん mailto:sage [2008/01/26(土) 14:59:39 ]
>>120 が顔文字に見える

123 名前:デフォルトの名無しさん mailto:sage [2008/01/26(土) 15:14:31 ]
会社に、プログラミングをさせてくださいとオナガイしたら、基本情報の資格を取ったらね
と言われて、只今勉強中で、自分で問題を作りマスタ、が
Windowsの計算機では小数を表す16進数が表示できないため、答えが合ってるか、どうか分かりません、答えが合ってるかどうか、教えてください、宜しくオナガイシマス算数の得意なエロイヒト

【自分で作った問題です】
7E.3Aを10進数の分数で表したらどうよ

【式と答え】
2進化16進
0111 1010.0011 1010
整数部と小数部に分ける
= ( 2^7 + 2^6 + 2^5 + 2^4 + 2^1 ) + ( 1/8×1 + 1/16×1 + 1/32×1 + 1/128×1 )
128で約分する
= ( 126 × 128 ) + ( 16 + 8 + 4 + 1 ) / 128
= ( 126 × 128 + 29 ) / 128
= 16157 / 128
この解答でどうよ?

124 名前:デフォルトの名無しさん mailto:sage [2008/01/26(土) 16:01:22 ]
>>!23
答えは正しいです。
電卓で0x7E3Aを10進数に変換すれば検算できます。
手計算なら16、256、4096という数を暗記しておいて
16進数から直接10進数に変換するほうが速いです。

7E.3A
= 0x7E3A / 0x100
= (7 * 4096 + 14 * 256 + 3 * 16 + 10) / 256
= 32314 / 256
= 16157 / 128 (約分する場合)

125 名前:123 mailto:sage [2008/01/26(土) 16:30:29 ]
>>124thxです
凄い!プチ神が、降臨シマスタ
カミングアウトしますが、実は計算がとても苦手なんです
実際試験中に、計算方法(式)が分かっても
途中で計算を間違える人なので物凄くありがたいのですが、一つ質問させてください
7E.3A
= 0x7E3A / 0x100
整数化するために、0x100を乗してますが、どんな場合でも0x100を乗したらいいのでしょうか?
例えば、D7E.3Aの場合
D7E.3A
= D7E3A / 0x100
でいいのでしょうか?

126 名前:123 mailto:sage [2008/01/26(土) 16:39:00 ]
スマン、訂正です
>>×整数化するために、0x100を乗してますが、どんな場合でも0x100を乗したらいいのでしょうか?
○整数化するために、0x100を除してますが、どんな場合でも0x100を除したらいいのでしょうか?

127 名前:123 mailto:sage [2008/01/26(土) 16:40:44 ]
スレ汚しごめんなさい、頭のいい人がいるので、興奮して、あわててます
○整数化するために、0x100で除してますが、どんな場合でも0x100で除したらいいのでしょうか?


128 名前:デフォルトの名無しさん mailto:sage [2008/01/26(土) 16:54:46 ]
小数点以下が16進数2桁のときに0x100を使います。
D7E3.A = D7E3A / 0x10
D7E.3A = D7E3.A / 0x10 = D7E3A / 0x100
D7.E3A = D7E.3A / 0x10 = D7E3.A / 0x100 = D7E3A / 0x1000

129 名前:デフォルトの名無しさん mailto:sage [2008/01/26(土) 16:57:17 ]
別に、>124が特段頭がいいわけじゃないから落ち着けよ。あんたが間抜けなだけなんだから。
何も16進数を持ち出すまでもなく、10進数でも筆算のときに同じことをしているんだぞ。
例えば、123.45に6を掛けるときにどうするか考えてみろ。
一旦小数点のことは忘れて12345*6を計算し、その結果に123.45同様右から二桁のところに小数点を書くわけだ。



130 名前:123 mailto:sage [2008/01/26(土) 17:06:10 ]
>>128
>>129
ありがd、とてもよくわかりました
ここは凄い板ですね、感動シマスタ
色んな参考書や、サイト見てるけど、124氏のような解説は無かった

131 名前:デフォルトの名無しさん mailto:sage [2008/01/26(土) 19:13:50 ]
16進数の小数があってるかどうか分からないって?
適当な数だけ下駄を履かせりゃいいだろ。

132 名前:デフォルトの名無しさん [2008/01/26(土) 21:45:15 ]
ラムダ計算の勉強をしたいのですが、いちばんやさしい入門書を紹介してもらえませんか?

133 名前:デフォルトの名無しさん [2008/01/27(日) 01:05:27 ]
計算幾何学勉強しようとしてんだけど
普通の幾何学からやらんとダメか?

134 名前:デフォルトの名無しさん mailto:sage [2008/01/27(日) 01:36:05 ]
計算機科学じゃなくて計算幾何学のほうだとすれば
ある程度は幾何学わかってないと自分が何やってるかすら
把握できないんじゃないかと思うけど

135 名前:デフォルトの名無しさん mailto:sage [2008/01/27(日) 06:20:34 ]
>123,>132,>133
お前等にはプログラミングとか向いてないよ。
馬鹿すぎる。
諦めろ。

136 名前:デフォルトの名無しさん mailto:sage [2008/01/27(日) 10:47:04 ]
中学生かも知れないじゃないか

137 名前:デフォルトの名無しさん mailto:sage [2008/01/27(日) 11:04:49 ]
>>136
中学生が会社に「プログラミングをさせてください」ってお願いするのか?

138 名前:デフォルトの名無しさん mailto:sage [2008/01/27(日) 11:23:00 ]
>>135
現代の現場でのプログラミングの主流はライブラリ検索型。

つまり、全てのライブラリが用意されていて、そのライブラリの使い方を調べて組み立てるだけ。
だからこういう質問が出る方が適性があるとも言える。


139 名前:デフォルトの名無しさん mailto:sage [2008/01/27(日) 12:47:02 ]
>>123 >>132 >>133 >>138
死ね




140 名前:デフォルトの名無しさん mailto:sage [2008/01/27(日) 16:46:57 ]
>>132
いちばんやさしいかは知らんが
www.amazon.co.jp/dp/4839920818/

141 名前:デフォルトの名無しさん mailto:sage [2008/01/28(月) 19:47:29 ]
馬鹿下駄問題かもしれませんが、教えてくださいエロイヒト
逆ポーランド表記法の問題です、式と答えが、あってるかどうか教えてください
【問題】
Y = ( A + B × C ) ÷ ( D - E )
上記の式を、逆ポーランド表記法で表しなさい
【式】
括弧の中から先に
Y = ( ABC×+ ) ÷ ( DE- )
括弧と括弧の割り算
Y = ABC×+DE-÷
最期に=の計算
YABC×+DE-÷=
【答え】
YABC×+DE-÷=
これで合ってますでしょうか?

142 名前:デフォルトの名無しさん mailto:sage [2008/01/28(月) 21:01:06 ]
いつも思うんだが
ポーランド表記法に改めて
「逆」を付ける理由が分からん


143 名前:デフォルトの名無しさん mailto:sage [2008/01/28(月) 21:18:37 ]
記法が逆になってるじゃん。

144 名前:デフォルトの名無しさん mailto:sage [2008/01/28(月) 21:21:27 ]
ポーランド表記法は + 1 2 だから。

----

で、問題のほうだが、

Y= の部分が問題に含まれているのが激しく微妙すぐる。

RPNへの書き換え自体は問題ないが、そのRPNの式に従ってスタック計算機で
計算した場合、計算の最後は

------------ スタックトップ
( A + B × C ) ÷ ( D - E )
------------
Y に元々入っていた値
----------------------------------------- スタックボトム

という状態のスタックに "=" という演算子による演算を適用する、ということになる。
問題の式における Y とか = の意味がそういうものだというのなら問題ないのだが。

145 名前:141 mailto:sage [2008/01/28(月) 21:50:14 ]
thx>>ALL
 後置表記法(逆ポーランド表記法)では、例えば、式 X=(A−B)×C を
 XAB−C×=と表現する。

  次の式を後置表記法で表現したものはどれか。
  X=(A+B)×(C−D÷E)

 ア XAB+CDE÷−×=

 イ XAB+C−DE÷×=

 ウ XAB+EDC÷−×=

 エ XBA+CD−E÷×

答え ア

この問題と解答を手掛かりに、練習問題を自分で考え、質問させてもらいましたので
果たして、自分の考え方(式)や答えが正しいのかさっぱり分かりません、
もし、このような問題だった場合、先の解答、考え方は、正しいのでしょうか?


146 名前:デフォルトの名無しさん mailto:sage [2008/01/28(月) 22:24:47 ]
スタックに入る時点では変数として入って
それを読み出すときに文脈によって右辺値または左辺値として
評価されるという言語かもしれないじゃないか

それにそもそも=は比較演算子かもね

147 名前:141 mailto:sage [2008/01/28(月) 22:37:37 ]
>>146
どうもです

148 名前:デフォルトの名無しさん mailto:sage [2008/01/29(火) 06:31:53 ]
中置記法の式をツリーにして、そのツリーを反時計回り(左優先)、深さ優先で
post-orderトラバースすればRPNに変換できるよ。post-orderというのは、その
ノードを抜ける(親ノードの処理に移る)ときにノードの値の表示を行うという
こと。

149 名前:デフォルトの名無しさん [2008/01/29(火) 14:46:33 ]
教えて欲しい問題があります!

データベースに登録した同じ次元のベクトルをコサイン尺度によって類似度を求めたいのですが,
コサイン尺度のプログラムが書けなくて困ってます!

以下がコサイン尺度の数式です.

cos(dj,q)
=(Σ_[i=1, m] dij*qi)/(√(Σ_[i=1, m] dij^2)^(1/2)) * (√(Σ_[i=1, m] qi^2)^(1/2))

※q=検索質問ベクトル,dj=各文書ベクトル
となっています.

また,dj*q はベクトル間の内積を表していて,
dj*q = Σ_[i=1, m] dij*qi
となってます.

少し複雑な計算式ですが,とりあえず書いてみました.

Railsのスレで質問したのですがこのスレの方が良いと言われたので書き込みました.
どなたかRubyになおしてもらえるならお願いします(×_×)



150 名前:デフォルトの名無しさん mailto:sage [2008/01/29(火) 21:34:17 ]
>>149
まず、include Mathする。

でもって、コサインは
cos(t) # Math.cos(t)

平方根は
sqrt(x) # Math.sqrt(x)

一次元ベクトルaの成分和は、
a.inject {|x, y| x + y }

a,bの内積はa.size == b.sizeだとして
a.zip(b).map {|x, y| x * y}.inject { |x, y| x + y }
かな。


151 名前:デフォルトの名無しさん mailto:sage [2008/01/30(水) 01:10:11 ]
>>149
cos(dj,q) = dj・q / |dj||q|
これが計算したいと予想。名前にコサインって入ってるし。

inner(x,y)=xとyの内積、norm(x)=|x|=sqrt( inner(x,x) )とすると
cos(dj,q) = inner(x,y) / { norm(dj) * norm(q) }


152 名前:デフォルトの名無しさん [2008/02/11(月) 12:05:23 ]
f(t) = b1*t + b2*t^2 + b3*t^3 + b4*t^4...
tは0〜1の範囲としてf(0)=0 かつ f(1)=1 で この間 増加続ける係数群が欲しいのです
つまり b1=1-(b2+b3+b4...) です。

・ 2次の場合, f(t)=(1-b2)*t + b2*t^2 でb2の範囲は-1〜1
・ 3次の場合も、微分して0,1になる値を求めて場合分けして解けました。

4次以上になると微分結果も3次式になって簡単に解けません。

数学板で聞いたのですが、
>一般には難しい
>というよりきれいな結果が出ないタイプの問題にみえる

という事でした。 
でも、こういった問題は既に解かれていると思うのです。
たとえばZ変換/ラプラス変換や周波数特性が凸凹でないという条件と同じですから
ヒント等ございませんでしょうか?

153 名前:デフォルトの名無しさん mailto:sage [2008/02/11(月) 12:15:20 ]
数学板でそういわれたんなら、そうなんだと思うけど。

とりあえず、周波数特性が凸凹でないってのと、
その関数の単調増加性は全然関係ないと思う。

154 名前:デフォルトの名無しさん [2008/02/11(月) 12:52:46 ]
f' > 0 なら増加だから
3次関数で、正のものをえらんで積分すればよい

155 名前:デフォルトの名無しさん [2008/02/11(月) 12:56:40 ]
(x-a)(x-b)(x-c)(x-d)の形で始めればよい
極値は簡単にわかる

156 名前:152 mailto:sage [2008/02/11(月) 13:31:13 ]
レスありがとうございます。
>>153
直線位相のFIRの場合 Σ An*cos(n*w) = ΣBn*cos(w)^n というふうに展開すれば
cos(w) は -1〜+1なので、 HPF/LPFなら座標変換すれば >>152の条件に戻せると思います

>>154
3次関数で全区間プラスの係数群を求めればいいという事ですね
でも結局3次方程式を解いて、係数の方向を見ていかないといけないですね

>>155
なるほど、それだと係数は複素数になるので
2次式の積の形に分解して解けばよいわけですね。

結局次数におうじて場合分けしてゆくしかないとしても、これなら解けそうに思えてきました。

ヒントありがとうございました。

157 名前:デフォルトの名無しさん [2008/02/11(月) 14:37:08 ]
1次式と2次式の0〜1の範囲の正負が判明すれば何次でも判明する

158 名前:デフォルトの名無しさん mailto:sage [2008/02/11(月) 15:53:20 ]
1次式で、条件を満たすのは f(x) = x のみ

2次式は f(x)=( (1-a) + a*x)*x のみ

3次式は
( (1-a) + a*x)* ( (1-b) + b*x)*x 【* c +(1-c)* ( ( (1-d) + d*x)*x 】

かな? 【】内が必要かどうか判らない

4次式以上もこの方式で拡張出来る?

159 名前:152 mailto:sage [2008/02/11(月) 19:06:08 ]
ありがとうございます。 【】の中は必要なようです。
それで拡張してゆきます。



160 名前:デフォルトの名無しさん [2008/03/20(木) 17:44:42 ]
来年高校生なのですが、プログラミングを今から始めても遅くないですよね?

161 名前:デフォルトの名無しさん mailto:sage [2008/03/20(木) 17:49:34 ]
Yes

162 名前:デフォルトの名無しさん mailto:sage [2008/03/20(木) 21:52:13 ]
何をするのに遅いというのか

163 名前:デフォルトの名無しさん mailto:sage [2008/03/21(金) 10:51:47 ]
ったくいまどきのガキときたら

164 名前:デフォルトの名無しさん mailto:sage [2008/03/22(土) 00:24:11 ]
>>160
大丈夫。MIT で採用してるのを勉強するのが吉。

もうひとつの Scheme 入門
www.shido.info/lisp/idx_scm.html

文面中の mit-scheme-7.7.1-ix86-win32.exe はここにある。
ftp.gnu.org/gnu/mit-scheme/stable.pkg/7.7.1/mit-scheme-7.7.1-ix86-win32.exe

165 名前:デフォルトの名無しさん mailto:sage [2008/06/24(火) 23:39:39 ]
単位取れなくてもまあいいやって思って情報数学の授業をぼんやり受けてたら掃き出し法もろくに解けなくてワロタ

166 名前:デフォルトの名無しさん [2008/08/15(金) 07:11:12 ]
hage

167 名前:デフォルトの名無しさん [2008/09/27(土) 17:20:52 ]
オーダーのO(n)とO(nlogn)ってどっちが速いですか?
lognはnが10なら1だからO(n)の方が速いと思ってるのですが、
とあるブログでO(nlogn)の方が速いって言っててわからなくなりました


168 名前:デフォルトの名無しさん mailto:sage [2008/09/27(土) 17:26:49 ]
O(n)が速い
そのブログは嘘

169 名前:デフォルトの名無しさん mailto:sage [2008/09/27(土) 17:28:02 ]
>>168
167の自分の考えは間違っていないですか?




170 名前:デフォルトの名無しさん mailto:sage [2008/09/27(土) 17:30:06 ]
^2 が抜けてたとかそういう落ちか、
オーダーの問題じゃなくて n が小さい時の挙動の話か。

171 名前:デフォルトの名無しさん mailto:sage [2008/09/27(土) 17:32:13 ]
>>170
だいたい自分の理解の仕方は間違っていないということはわかりました
ありがとうございました


172 名前:デフォルトの名無しさん mailto:sage [2008/09/27(土) 17:32:27 ]
どのブログ?

173 名前:デフォルトの名無しさん mailto:sage [2008/09/27(土) 17:35:54 ]
いつもお世話になってるとこなんで穏便にお願いしますね

ttp://monsho.blog63.fc2.com/blog-entry-83.html


174 名前:デフォルトの名無しさん mailto:sage [2008/09/27(土) 17:36:52 ]
オーダーだから「nが10なら1」というような意味はない...けど、
(底が10の対数、という意味ではないから)
nlognのほうが早い、ってことはないな。

175 名前:デフォルトの名無しさん mailto:sage [2008/09/27(土) 17:41:35 ]
>>174
そうなんですか
てっきり常用対数なのかと思ってました


176 名前:デフォルトの名無しさん mailto:sage [2008/09/27(土) 17:46:31 ]
ja.wikipedia.org/wiki/%E3%83%A9%E3%83%B3%E3%83%80%E3%82%A6%E3%81%AE%E8%A8%98%E5%8F%B7

177 名前:デフォルトの名無しさん mailto:sage [2008/09/27(土) 18:11:04 ]
>>173
やっぱ n が小さい時の挙動じゃん。

アルゴリズムの改良って、
オーダーが小さくなる代わりにオーバーヘッドが大きくなることがよくある。

この場合、
オーダーが小さい → n を大きくしても平気
オーバーヘッドが大きい → n が小さい時は逆に不利

178 名前:デフォルトの名無しさん mailto:sage [2008/09/27(土) 18:33:34 ]
単純に計算するとn<10でn*logn<nになるな
少ない要素数に対して何度も適用する場合においては有利になるとかなんかな?
実例としてはどんなのがあるんだろう

179 名前:デフォルトの名無しさん mailto:sage [2008/09/27(土) 18:35:14 ]
>>177
>このオーダーの計算は n が∞に向かった場合の処理の速さを相対的に表現したものに過ぎません。O(n) と O(nlogn) なら O(nlogn) の方が速いわけです。

この一文に関しては前後の脈絡関係なく単独で判断できると思うんですよ
そうすると間違っているということじゃないんですか?




180 名前:デフォルトの名無しさん mailto:sage [2008/09/27(土) 18:41:35 ]
logの底が10だと思ってる奴って結構いるのかな

181 名前:デフォルトの名無しさん mailto:sage [2008/09/27(土) 18:46:51 ]
>>179
その認識で合ってる

182 名前:デフォルトの名無しさん mailto:sage [2008/09/27(土) 18:48:22 ]
>>181
主語はどっちですか


183 名前:デフォルトの名無しさん mailto:sage [2008/09/27(土) 18:51:26 ]
日本語に主語は無い

184 名前:デフォルトの名無しさん mailto:sage [2008/09/27(土) 18:55:50 ]
底が省略されてるときの底がeだったり10だったりとややこしいから機雷

185 名前:デフォルトの名無しさん mailto:sage [2008/09/27(土) 18:57:18 ]
そんな意地悪しなくてもw
いやどっちが合ってるって言ったのか確信が持てなくて
まあ『認識』って書いてあるから俺の考えてることで合ってるって意味だと思いますけど
ブログの方が合ってると言うなら『記述』とか書くでしょうから


186 名前:デフォルトの名無しさん mailto:sage [2008/09/29(月) 01:49:17 ]
O(f(n))とO(g(n))があったら
f(n)/g(n)→∞(n→∞)ならg(n)のほうがnの増加に対して効率がいい。
f(n)/g(n)→0(n→∞)ならf(n)のほうがnの増加に対して効率がいい。

アルゴリズムイントロダクション第一巻読め。

187 名前:デフォルトの名無しさん mailto:sage [2008/09/29(月) 01:54:23 ]
やあ今頃来たのかい

188 名前:デフォルトの名無しさん mailto:sage [2008/09/29(月) 09:52:29 ]
アルゴリズムイントロダクション新品で売ってない・・・

189 名前:デフォルトの名無しさん mailto:sage [2008/09/30(火) 00:26:00 ]
抽象度の高いクラスを設計するには数学力を鍛えると良いと聞きました。
数学は抽象の宝庫であると。
集合論が一番の基礎だと思うのですが、抽象度の高いクラス設計に必要な地力をつけるために
数学を学ぶとしたら、集合論からどのような分野にステップアップしていけばよいですか?




190 名前:デフォルトの名無しさん mailto:sage [2008/09/30(火) 01:28:12 ]
クラス設計の本でも読んで、試行錯誤しながら実装しる。
現実世界ではペンキ塗ったりワックスがけしたりして空手が強くなるということはない。

191 名前:デフォルトの名無しさん mailto:sage [2008/09/30(火) 10:34:46 ]
クラス設計に関しては、現状ではやれデザインパターンたどかリファクタリングだの
アスペクト指向やらと試行錯誤といった状態だと思う。

またマシンの性能が確保できる時はいいけども、
組み込みや容量・速度といった制限のかかっている場合は、
クラスを使わないようにすることがベストなんて場合もある。

作業者のスキルが揃わなかったり、昔ながらの人が居たりで、
グローバル変数べったりのコードを書かざる得ない状況だって実務的にはあった。

数学は大学に入る時の能力で後は下がる。
歳を取ったら新しいロジックを頭で追いかけ切れなくなって
結局はパターン的に処理してるだけ時もくる。

ただ何か頑張ろうという意欲は大切だと思うので、
今、目の前の問題に関するところから広げていくくらいでいいのでは思う。







[ 続きを読む ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧](*・∀・)<83KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef