探検
C++ vs Rust
■ このスレッドは過去ログ倉庫に格納されています
2021/04/24(土) 08:04:49.48ID:nPKzA798
競え
2021/08/31(火) 18:26:05.32ID:8qO1h2Cp
まだstable入りはしてないけどlinked_list::{Cursor, CursorMut}っていうのがあるね
そのベンチマークでは使ってる?
そのベンチマークでは使ってる?
2021/08/31(火) 19:03:52.76ID:WFW0JNLV
LinkedListとはなんぞや?std::list?
2021/08/31(火) 19:52:34.92ID:4dUmDNFP
>>39
Rust は stable で LinkedList も VecDeque (双方向キュー)もありますよ
https://doc.rust-lang.org/std/collections/index.html
ここにそれらのオーダーが O(1) や O(N) になる話もまとまっています
Rust は stable で LinkedList も VecDeque (双方向キュー)もありますよ
https://doc.rust-lang.org/std/collections/index.html
ここにそれらのオーダーが O(1) や O(N) になる話もまとまっています
2021/08/31(火) 21:21:08.46ID:KWeLtswn
>>39
参照局所性の問題もあるから計算量の理論通りにはいかない場合もあるけど、ちゃんと性能測定してデータ構造選定した?
参照局所性の問題もあるから計算量の理論通りにはいかない場合もあるけど、ちゃんと性能測定してデータ構造選定した?
2021/08/31(火) 21:26:21.55ID:KWeLtswn
あとRustではほぼ不可能の意味が分からない
Rust にはポインタがあるから C や C++ のデータ構造はほぼ実現可能なのでは
Rust にはポインタがあるから C や C++ のデータ構造はほぼ実現可能なのでは
2021/08/31(火) 22:27:32.77ID:wvWDiazC
2021/08/31(火) 23:58:27.88ID:SlncBcTV
>>42
ところが、Rustでは借用規則のせいで上手く行かない。
めんどくさいので自分で気づく人だけが理解してくれればいいので、
俺はこれ以上説明しない。
理解できない人は、親切な人が説明してくれるのを待て。
ところが、Rustでは借用規則のせいで上手く行かない。
めんどくさいので自分で気づく人だけが理解してくれればいいので、
俺はこれ以上説明しない。
理解できない人は、親切な人が説明してくれるのを待て。
2021/08/31(火) 23:58:51.57ID:SlncBcTV
>>44
無理。
無理。
2021/09/01(水) 00:55:38.60ID:MtyAaHfZ
>>47
それはあなたが無知なだけだ
Rustはメモリ安全性を保証する
一方でRustの標準ライブラリではunsafeが多数使われているがこれはメモリ安全性を保証できる操作を効率よく実装するためにある
つまり論理的にメモリ安全性を保証できるならばunsafeを用いてもそれをライブラリやモジュールに閉じ込めることができる
もちろん自作でもこれは同様である
新たな型も当然作ることが可能
標準ライブラリで提供されているリンクドリスト型や双方向リスト型はそのようにして作られている
つまり効率をも落とさない
それはあなたが無知なだけだ
Rustはメモリ安全性を保証する
一方でRustの標準ライブラリではunsafeが多数使われているがこれはメモリ安全性を保証できる操作を効率よく実装するためにある
つまり論理的にメモリ安全性を保証できるならばunsafeを用いてもそれをライブラリやモジュールに閉じ込めることができる
もちろん自作でもこれは同様である
新たな型も当然作ることが可能
標準ライブラリで提供されているリンクドリスト型や双方向リスト型はそのようにして作られている
つまり効率をも落とさない
2021/09/01(水) 01:25:17.04ID:+dwouIiT
2021/09/01(水) 01:27:41.34ID:FA803rPU
>>40にも答えてくれよ
その「問題」とやらはCursorじゃ解決されてないのかい
その「問題」とやらはCursorじゃ解決されてないのかい
52デフォルトの名無しさん
2021/09/03(金) 08:12:39.26ID:t+NhPRD1 >>49
ガイジ
ガイジ
2021/09/07(火) 20:33:21.38ID:ezLxFpG4
結局unsafe多用するとか意味ないジャンw
54デフォルトの名無しさん
2021/09/07(火) 23:30:30.79ID:W5eU3b0C >>53 裏方のunsafeなコード(≠危険なコード)を安全に利用してプログラムを書けるのがRustだと思う
また、その裏方のunsafeなコードをRustで書く意味はRustから扱いやすいこと、Rustプログラマーが慣れたRustの文法で書けることがあると思う
また、その裏方のunsafeなコードをRustで書く意味はRustから扱いやすいこと、Rustプログラマーが慣れたRustの文法で書けることがあると思う
2021/09/08(水) 01:30:18.74ID:c9lCkxrV
2021/09/08(水) 01:30:55.64ID:c9lCkxrV
unsafeを閉じ込め切れるならRustはパーフェクトだが、そうはなってないのだ。
57デフォルトの名無しさん
2021/09/08(水) 09:53:24.22ID:8gtworgR >>55 そうか、まぁ一個人の感想ぐらいに受け取ってくれ
58デフォルトの名無しさん
2021/09/09(木) 16:53:30.53ID:lJRSMQ7p なんだかんだ言ってまだまだC++だな
2021/09/09(木) 17:22:38.75ID:fa/WJTRs
unsafe を閉じこめられるかどうかはAPI設計力が問われるよな
2021/09/09(木) 18:17:29.61ID:18O2MBOf
2021/09/10(金) 08:39:25.32ID:w07MHOd0
2021/09/10(金) 09:06:15.40ID:Ga+Uz44a
数学関係ないし
お前には数学の才能が無い
お前には数学の才能が無い
2021/09/10(金) 09:26:50.69ID:XIGB6bHM
数学的に間違いの意味がようわからんが、
unsafeブロック内あるいは関数内でSAFETYが守られるようにしないと安全に閉じ込めることができないって意味??
unsafeブロック内あるいは関数内でSAFETYが守られるようにしないと安全に閉じ込めることができないって意味??
2021/09/10(金) 09:28:15.95ID:KDfyX1FH
Vec<T> が unsafe を使って安全なインターフェースを提供してることへの反論を示してくれ
2021/09/10(金) 11:00:27.70ID:4cVpX4oe
>>63
そうでなくて、unsafeブロックで閉じ込めようとしても、閉じ込め切れなくて、
O(x)で表される計算時間が、C言語とは同じでは絶対に不可能な場合があるんだ。
Rustのsafeモードでは、コンテナの中のノードに対して書き込み参照と読み込み参照
を持つことが借用規則によって禁じられていることが原因。
C言語ではそれが当たり前に出来るからとても効率の良いプログラムが可能だが
Rustでは、unsafeの外側ではそれが出来ないから不可能だ。
アプリレベルでそれが出来ないから。
これで納得できない人は数学の才能が無い。
俺は数学の天才。
そうでなくて、unsafeブロックで閉じ込めようとしても、閉じ込め切れなくて、
O(x)で表される計算時間が、C言語とは同じでは絶対に不可能な場合があるんだ。
Rustのsafeモードでは、コンテナの中のノードに対して書き込み参照と読み込み参照
を持つことが借用規則によって禁じられていることが原因。
C言語ではそれが当たり前に出来るからとても効率の良いプログラムが可能だが
Rustでは、unsafeの外側ではそれが出来ないから不可能だ。
アプリレベルでそれが出来ないから。
これで納得できない人は数学の才能が無い。
俺は数学の天才。
2021/09/10(金) 11:05:19.78ID:4cVpX4oe
>>65
数学の才能が無い人のためにもう少し詳しく書いてやろう。
・Rustのsafeモードでは、LinkedListの中の複数のノードに対して、
読み込み参照と書き込み参照を一度自動時には持てない。
持つと borrow cheker がコンパイル時にエラーを出してしまう。
・C言語ではそれが当たり前に出来る。
・アプリレベルで1つのLinkedListに対して複数の読み込み参照と
書き込み参照を同時に記録し続けることで、やっと、挿入や削除が
O(1)になる。index 値で保持すると O(N)になってしまうから、
vector と同じ速度オーダーしか出ない(つまり、LinkedList本来の性能
が全く出せない。)
・結果、Rustは、Cより遅いプログラムしか出来ない。その遅さは、データが
多いとき、C言語に比べて1万倍でも100万倍でも遅くなる。
数学の才能が無い人のためにもう少し詳しく書いてやろう。
・Rustのsafeモードでは、LinkedListの中の複数のノードに対して、
読み込み参照と書き込み参照を一度自動時には持てない。
持つと borrow cheker がコンパイル時にエラーを出してしまう。
・C言語ではそれが当たり前に出来る。
・アプリレベルで1つのLinkedListに対して複数の読み込み参照と
書き込み参照を同時に記録し続けることで、やっと、挿入や削除が
O(1)になる。index 値で保持すると O(N)になってしまうから、
vector と同じ速度オーダーしか出ない(つまり、LinkedList本来の性能
が全く出せない。)
・結果、Rustは、Cより遅いプログラムしか出来ない。その遅さは、データが
多いとき、C言語に比べて1万倍でも100万倍でも遅くなる。
2021/09/10(金) 11:27:11.50ID:2Djs9W2b
>>66
コードで書いて
コードで書いて
2021/09/10(金) 11:30:01.67ID:4cVpX4oe
2021/09/10(金) 11:36:42.07ID:4cVpX4oe
>>68
本当は次のような知識も必要:
・リンクドリストの構造。
・リンクドリストの挿入、削除などの計算オーダーO(x)。
・計算オーダーの記号O(x)の意味。ビッグオー。ランダウの記号。
東大、京大の学部レベルの解析学(微分積分学)の本を見よ。
・index 値 = 基本は配列の添え字。0から割り振られた連番。
リンクドリストでは本来使わないが、Rustではノードの場所を覚えておくために
使わざると得ない。その場合、リンクドリストの先頭のノードを 0 番とし、
次のノードを 1, その次のノードを 2 のように表す。
しかしそうすると、リンクドリスとの M 番目の場所の参照を取得するのに
O(M)の時間が掛かってしまい、リンクドリストの効率の良さが台無しになってしまう。
・このことから、リンクドリストが遅いという誤解を生む状況になってしまっている。
本当は次のような知識も必要:
・リンクドリストの構造。
・リンクドリストの挿入、削除などの計算オーダーO(x)。
・計算オーダーの記号O(x)の意味。ビッグオー。ランダウの記号。
東大、京大の学部レベルの解析学(微分積分学)の本を見よ。
・index 値 = 基本は配列の添え字。0から割り振られた連番。
リンクドリストでは本来使わないが、Rustではノードの場所を覚えておくために
使わざると得ない。その場合、リンクドリストの先頭のノードを 0 番とし、
次のノードを 1, その次のノードを 2 のように表す。
しかしそうすると、リンクドリスとの M 番目の場所の参照を取得するのに
O(M)の時間が掛かってしまい、リンクドリストの効率の良さが台無しになってしまう。
・このことから、リンクドリストが遅いという誤解を生む状況になってしまっている。
2021/09/10(金) 11:38:10.81ID:2Djs9W2b
>>68
東大数学って何?
東大数学って何?
2021/09/10(金) 11:39:59.60ID:4cVpX4oe
>>70
高校生が灯台に入学するときに受ける東大の数学の試験のことだよ。
それが簡単に解けるくらいのやつに聞いてみろって事だ。
しかし、受験テクニックやパターン学習によって解ける様になったやつはダメだ。
高校生が灯台に入学するときに受ける東大の数学の試験のことだよ。
それが簡単に解けるくらいのやつに聞いてみろって事だ。
しかし、受験テクニックやパターン学習によって解ける様になったやつはダメだ。
2021/09/10(金) 11:49:52.37ID:2Djs9W2b
>>69
O(1) で i 番目の要素にアクセスできる safe な LinkedList 実装はある
https://docs.rs/chainlink/0.1.0/chainlink/struct.LinkedList.html
O(1) で i 番目の要素にアクセスできる safe な LinkedList 実装はある
https://docs.rs/chainlink/0.1.0/chainlink/struct.LinkedList.html
2021/09/10(金) 11:52:48.63ID:2Djs9W2b
2021/09/10(金) 11:53:08.66ID:FsmeH+FF
https://play.rust-lang.org/?version=nightly&mode=debug&edition=2018&gist=bc6e823f6a44e442aabd4d4882d3eb5a
Repeated 1 time(s), duration = 2.531µs
Repeated 10 time(s), duration = 4.661µs
Repeated 100 time(s), duration = 29.449µs
Repeated 1000 time(s), duration = 256.555µs
Repeated 10000 time(s), duration = 1.800129ms
Repeated 20000 time(s), duration = 3.273489ms
Repeated 50000 time(s), duration = 8.345219ms
Repeated 100000 time(s), duration = 16.454731ms
Repeated 200000 time(s), duration = 32.911471ms
Repeated 500000 time(s), duration = 83.993118ms
Repeated 1000000 time(s), duration = 166.193956ms
結構実行毎にゆれる感じはあるけど、おおむねO(1)じゃないですかね
Repeated 1 time(s), duration = 2.531µs
Repeated 10 time(s), duration = 4.661µs
Repeated 100 time(s), duration = 29.449µs
Repeated 1000 time(s), duration = 256.555µs
Repeated 10000 time(s), duration = 1.800129ms
Repeated 20000 time(s), duration = 3.273489ms
Repeated 50000 time(s), duration = 8.345219ms
Repeated 100000 time(s), duration = 16.454731ms
Repeated 200000 time(s), duration = 32.911471ms
Repeated 500000 time(s), duration = 83.993118ms
Repeated 1000000 time(s), duration = 166.193956ms
結構実行毎にゆれる感じはあるけど、おおむねO(1)じゃないですかね
2021/09/10(金) 12:09:20.46ID:4cVpX4oe
2021/09/10(金) 12:12:17.45ID:Ga+Uz44a
>>68
呼んだ?
呼んだ?
2021/09/10(金) 12:14:53.57ID:Ga+Uz44a
2021/09/10(金) 12:18:15.36ID:Ga+Uz44a
少なくとも>>65が書いてることは数学的でも何でもない
2021/09/10(金) 12:18:20.87ID:FsmeH+FF
2021/09/10(金) 12:27:50.85ID:4cVpX4oe
>>79
push_front()使ってるから先頭へ挿入してるだけじゃないか。
Cのリンクリストは、どんな非負整数 M に対して、M番目に挿入しても
MにもNにも依存しない定数時間で挿入できる。
それがRustに欠けている。
push_front()使ってるから先頭へ挿入してるだけじゃないか。
Cのリンクリストは、どんな非負整数 M に対して、M番目に挿入しても
MにもNにも依存しない定数時間で挿入できる。
それがRustに欠けている。
2021/09/10(金) 12:28:54.60ID:2Djs9W2b
>>75
そのオーバーヘッドは実用上問題になりますか?
例えばmallocの実装もarenaを使っていますが問題はないのですか?
そもそも計算量の議論をしていたのはあなたなのになぜ論点をずらすのですか?
そのオーバーヘッドは実用上問題になりますか?
例えばmallocの実装もarenaを使っていますが問題はないのですか?
そもそも計算量の議論をしていたのはあなたなのになぜ論点をずらすのですか?
2021/09/10(金) 12:30:48.00ID:Ga+Uz44a
2021/09/10(金) 12:41:50.91ID:4cVpX4oe
2021/09/10(金) 12:42:38.21ID:XIGB6bHM
>>65が何言ってるのか1行たりとも理解できなくて日本語の見た目した何かにしか見えないんだけど、
なんで話が進んでるの・・・
なんで話が進んでるの・・・
2021/09/10(金) 13:08:34.28ID:Ga+Uz44a
>>83
自分でM番目に挿入って書いてるわけだが
自分でM番目に挿入って書いてるわけだが
2021/09/10(金) 13:34:07.88ID:4cVpX4oe
>>85
「M番目に挿入」するが、それをMという数値で識別するとは書いてない。
数学とはそういうものだ。
ポインタ p で表現する場合でも、p が M 番目のノードを指していることがある。
その場合は、M番目に挿入と表現される。
そう表現しないと、O(x)記号で表現しにくいからだ。
「M番目に挿入」するが、それをMという数値で識別するとは書いてない。
数学とはそういうものだ。
ポインタ p で表現する場合でも、p が M 番目のノードを指していることがある。
その場合は、M番目に挿入と表現される。
そう表現しないと、O(x)記号で表現しにくいからだ。
2021/09/10(金) 13:35:00.70ID:FsmeH+FF
2021/09/10(金) 13:35:29.31ID:4cVpX4oe
数学での言葉の表現と日常の言葉の表現は異なる。
「M番目に挿入」することと、そのノードを、index = M - 1 で表すこととは
別の話だ。
「M番目に挿入」することと、そのノードを、index = M - 1 で表すこととは
別の話だ。
2021/09/10(金) 13:47:35.86ID:4cVpX4oe
>>87
同じノードを複数のCursor/CursorMutが参照している場合、1つの参照経由
でノードを削除した場合、別の参照がダングリング参照になるのを0コストで
防ぐ方法は無いはずだ。
静的解析が不可能で、時間や記憶域に何らかのオーバヘッドが必要となるはず。
同じノードを複数のCursor/CursorMutが参照している場合、1つの参照経由
でノードを削除した場合、別の参照がダングリング参照になるのを0コストで
防ぐ方法は無いはずだ。
静的解析が不可能で、時間や記憶域に何らかのオーバヘッドが必要となるはず。
2021/09/10(金) 14:16:45.03ID:4cVpX4oe
さらに、1つの LinkedListに対して、同時に2個以上の CursorMut を作ることは
出来ないはず。
出来ないはず。
2021/09/10(金) 14:18:55.00ID:iOAXb/4V
Cでリンクドリストの途中を直接ポインタで持っていると速いが
その途中が削除された場合にそのポインタは危険なポインタとなる
つまりCで記述しても何らかのコストをかけなければ安全に出来ない
つまりこの問題はどの言語であろうがコストゼロにすることは不可能
その途中が削除された場合にそのポインタは危険なポインタとなる
つまりCで記述しても何らかのコストをかけなければ安全に出来ない
つまりこの問題はどの言語であろうがコストゼロにすることは不可能
2021/09/10(金) 15:27:02.65ID:I2sJLr90
93デフォルトの名無しさん
2021/09/10(金) 15:44:47.65ID:EyQ85oMr すげぇバカ
2021/09/10(金) 15:45:34.73ID:XIGB6bHM
よくわからないけどこんなスレよりqiitaとかzennとかで記事書いたほうがいいと思う
2021/09/10(金) 17:06:16.82ID:lpjuAWj9
>>86
屁理屈
屁理屈
2021/09/10(金) 17:11:54.58ID:lpjuAWj9
どんな非負整数Mに対して
と自分で書いている
当然与える情報はMである
各Mに対応するポインタを保持するなら
挿入時にそのテーブルを更新しなきゃならないから
O(1)では出来ない
と自分で書いている
当然与える情報はMである
各Mに対応するポインタを保持するなら
挿入時にそのテーブルを更新しなきゃならないから
O(1)では出来ない
2021/09/10(金) 17:38:39.28ID:dS7angqs
>>96
Mを与える情報とは書いてない。
Mというものを使わないと、LinkedListとVectorで共通した議論が出来なく
なるから書いてるだけ。数学では良く使う論法。
つまり、Mは、議論の中で場所を特定するために用いているだけで、
プログラム中で用いているとは言ってない。
Mを与える情報とは書いてない。
Mというものを使わないと、LinkedListとVectorで共通した議論が出来なく
なるから書いてるだけ。数学では良く使う論法。
つまり、Mは、議論の中で場所を特定するために用いているだけで、
プログラム中で用いているとは言ってない。
2021/09/10(金) 17:41:20.99ID:dS7angqs
例えば、コンテナに100個のノードが入っていたとする。
コンテナは、LinkedListやVectorなどどんなアルゴリズムを使っているかは何でも良い。
で、「5番目の場所にノードを追加する」という言葉は、LinkedListにも使えるが、
その場合、プログラム中では5という数値で識別せず使わず、ポインタで識別する
のが C言語での常識。
でも、「5番目の場所に追加する」という言葉は使ってよい事になっている。
コンテナは、LinkedListやVectorなどどんなアルゴリズムを使っているかは何でも良い。
で、「5番目の場所にノードを追加する」という言葉は、LinkedListにも使えるが、
その場合、プログラム中では5という数値で識別せず使わず、ポインタで識別する
のが C言語での常識。
でも、「5番目の場所に追加する」という言葉は使ってよい事になっている。
2021/09/10(金) 17:43:19.62ID:iOAXb/4V
>>96
その人は数学が得意と言いながらそこすら理解できていない人だからね
Cでもプログラミングしたことあるならすぐわかることだからプログラミング経験も乏しいと推測される
つまりRustを叩きたいだけの人が暴れているだけの構図
その人は数学が得意と言いながらそこすら理解できていない人だからね
Cでもプログラミングしたことあるならすぐわかることだからプログラミング経験も乏しいと推測される
つまりRustを叩きたいだけの人が暴れているだけの構図
100デフォルトの名無しさん
2021/09/10(金) 17:48:47.41ID:dS7angqs >>99
理解してる。
お前らが、M番目のノードを数値Mでプログラムでも辿ると勘違いしている
抽象化が理解できない馬鹿だからそう思ってるだけ。
俺は抽象化が得意だから、M番目のノードをポインタで識別すると
考える。お前らは、Mとpを脳内で橋渡しできないだけ。
理解してる。
お前らが、M番目のノードを数値Mでプログラムでも辿ると勘違いしている
抽象化が理解できない馬鹿だからそう思ってるだけ。
俺は抽象化が得意だから、M番目のノードをポインタで識別すると
考える。お前らは、Mとpを脳内で橋渡しできないだけ。
101デフォルトの名無しさん
2021/09/10(金) 17:49:37.61ID:dS7angqs 数学的才能の無い人とは話が合わない。
知能に差が大きすぎる人達とは話が合わない。
知能に差が大きすぎる人達とは話が合わない。
102デフォルトの名無しさん
2021/09/10(金) 17:58:29.87ID:9JzLMDXF もっと知能レベルが合った人が集う場所にいきな
103デフォルトの名無しさん
2021/09/10(金) 18:15:44.49ID:ae9TKcqK >>100
君は数学が不得意だな
入力Mに対してM番目を得る関数のコスト(リソースコストなど含む)を考えればいいだけなのにそれができない
抽象的に考えるのが苦手なら具体的な関数のプログラムを考えてもよい
Rustを叩きたいだけだとしてもC言語のプログラミングくらいはできるんだろ?
君の主張が間違っていて実現不可能なことがすぐわかる
そして示せなければ君の完全敗北確定だ
君は数学が不得意だな
入力Mに対してM番目を得る関数のコスト(リソースコストなど含む)を考えればいいだけなのにそれができない
抽象的に考えるのが苦手なら具体的な関数のプログラムを考えてもよい
Rustを叩きたいだけだとしてもC言語のプログラミングくらいはできるんだろ?
君の主張が間違っていて実現不可能なことがすぐわかる
そして示せなければ君の完全敗北確定だ
104デフォルトの名無しさん
2021/09/10(金) 18:22:19.32ID:uQqwzIiF >>98
完全に屁理屈
それならわざわざ「どんな非負整数Mに対しても」なんて言う必要は全く無い
任意のノード、任意の箇所
ならまだそういう可能性もある
たまたまMに対応するポインタがキャッシュされてた場合の計算量を言っても何の意味も無い
ちなみに数学的能力はお前よりあると思うよ
実績で勝負するなら付き合う
完全に屁理屈
それならわざわざ「どんな非負整数Mに対しても」なんて言う必要は全く無い
任意のノード、任意の箇所
ならまだそういう可能性もある
たまたまMに対応するポインタがキャッシュされてた場合の計算量を言っても何の意味も無い
ちなみに数学的能力はお前よりあると思うよ
実績で勝負するなら付き合う
105デフォルトの名無しさん
2021/09/10(金) 18:33:25.73ID:HO5HNd+Q106デフォルトの名無しさん
2021/09/10(金) 20:54:06.22ID:2Djs9W2b まあここ隔離スレなんで
107デフォルトの名無しさん
2021/09/10(金) 22:29:30.98ID:S72cPfGI 自分は数学できないからできる人の相場感覚は分からないが、数学の天才って◯◯予想を証明したとか、定理に自分の名前が付いているとか、そういうレベルの人のことじゃない? 東大数学程度で数学の天才を名乗られても……。
108デフォルトの名無しさん
2021/09/10(金) 23:03:29.47ID:G/i8H+xj > 高校生が灯台に入学するときに受ける東大の数学の試験のことだよ。
高校数学でここまでイキれるのはもはや才能だと思うわ
数学の天才っていうのは数学の研究してて教科書書いてるような
著名な人をまわりの人が「他称」するときの話で
高校数学の成績で「自称」しちゃうってのは別の才能w
高校数学でここまでイキれるのはもはや才能だと思うわ
数学の天才っていうのは数学の研究してて教科書書いてるような
著名な人をまわりの人が「他称」するときの話で
高校数学の成績で「自称」しちゃうってのは別の才能w
109デフォルトの名無しさん
2021/09/10(金) 23:04:20.56ID:uQqwzIiF 東大でやる数学じゃなくて入試でしょ?
つまり高校レベル
こんなのを東大の数学と言うな
つまり高校レベル
こんなのを東大の数学と言うな
110デフォルトの名無しさん
2021/09/11(土) 01:22:42.58ID:Q/hQI3Xf 知ってる一番難しい数学がそれだったんでしょ
つっこんであげないのが優しさでは
つっこんであげないのが優しさでは
111デフォルトの名無しさん
2021/09/11(土) 01:40:01.24ID:PRM8i6LA112デフォルトの名無しさん
2021/09/11(土) 10:36:57.99ID:kQXQH3+b 馬鹿ばっか。
113デフォルトの名無しさん
2021/09/11(土) 11:20:17.45ID:PFLibieQ 実際連結リストのノードに対する参照を保持しておくってどういうユースケースで現れるんだろうか
114デフォルトの名無しさん
2021/09/11(土) 11:40:09.41ID:tSun79KI 掲示板で算数自慢するときに使う
115デフォルトの名無しさん
2021/09/11(土) 11:42:49.15ID:kQXQH3+b >>113
例:
1. テキストエディタで、10万行のファイルを読み込み、その先頭に
1000行のテキストを挿入するときの速度向上。
2. 言語を自作する時、マクロ展開の時のトークン列へのトークンの挿入
例:
1. テキストエディタで、10万行のファイルを読み込み、その先頭に
1000行のテキストを挿入するときの速度向上。
2. 言語を自作する時、マクロ展開の時のトークン列へのトークンの挿入
116デフォルトの名無しさん
2021/09/11(土) 16:43:18.56ID:zUj2TAiQ117デフォルトの名無しさん
2021/09/11(土) 23:33:36.29ID:EO9owr6G118デフォルトの名無しさん
2021/09/12(日) 00:21:25.00ID:CFIv5O+a 相手をバカと貶めることで何もしなくても自分わ相対的に高めることができるという高等な議論テクだ
さすが高学歴
さすが高学歴
119デフォルトの名無しさん
2021/09/12(日) 02:54:54.78ID:x/1IPUIX >>115
1.ってバッファを1個のLinkedListとして持っておいて、カーソルの位置をノードへの&mutで持っておきたいって発想だよね
それよか2個のLinkedListに「カーソル以前の内容」「カーソル以降の内容」を最初から分けて持っておいて、
必要に応じて前者の末尾または後者の先頭を操作するという風にすれば、常に&mut LinkedListつかまれることもなくて都合良いのでは?
workaroundでしかないという批判は認めよう
1.ってバッファを1個のLinkedListとして持っておいて、カーソルの位置をノードへの&mutで持っておきたいって発想だよね
それよか2個のLinkedListに「カーソル以前の内容」「カーソル以降の内容」を最初から分けて持っておいて、
必要に応じて前者の末尾または後者の先頭を操作するという風にすれば、常に&mut LinkedListつかまれることもなくて都合良いのでは?
workaroundでしかないという批判は認めよう
120デフォルトの名無しさん
2021/09/17(金) 13:36:25.88ID:9sB/yeOV 任意のM番目に要素を挿入する時間計算量がO(1)の線形リストができないと入院中の妹が苦しむんだわ…
121デフォルトの名無しさん
2021/09/18(土) 16:11:40.95ID:bNqoSBDr どーでも良いですよ
byだいたひかる
byだいたひかる
122デフォルトの名無しさん
2021/10/05(火) 15:44:11.57ID:+1Hntkr6 素人だからよく分からんけど、実務やってる人からCppだとvoid**とか出てきて難しすぎて狂うって話は聞いたことあるけどラッパークラスを作って分かりやすいメソッドつくればいいんじゃないの
123デフォルトの名無しさん
2021/10/05(火) 18:47:14.74ID:JbR3YU6O void**のどこが難しいのかさっぱり
124デフォルトの名無しさん
2021/10/17(日) 09:40:31.27ID:6Bvliwnf void**は許さない派
125デフォルトの名無しさん
2021/10/24(日) 13:55:43.29ID:eQqSgpa/ 任意の言語ができる操作が任意の言語ではできないとほざくやつが数学ができるとかネタか糖質だろう...
チューニングマシンの存在を真っ向から否定したいならここではなく学会で論文を出そうね
チューニングマシンの存在を真っ向から否定したいならここではなく学会で論文を出そうね
126デフォルトの名無しさん
2021/10/24(日) 14:24:43.42ID:eQqSgpa/ プロレスごっこを期待して覗いたら、キチガイが占拠していたのは笑う
127デフォルトの名無しさん
2021/10/24(日) 14:57:26.55ID:dxF2sYGf ここ隔離スレなので
128デフォルトの名無しさん
2021/10/24(日) 18:05:52.35ID:NLtlOSxj チューニングマシンて
129デフォルトの名無しさん
2021/10/24(日) 20:19:43.90ID:IF6Ria+p c++とrustってチューニング完全なんですよね。意外にこれ知られてない
130デフォルトの名無しさん
2021/10/24(日) 20:55:50.68ID:IF6Ria+p rustの所有権は所謂、線形型
普通に理論として確立している
数学できるくんの主張は線形型によってチューニングマシンの計算複雑性が変化するってことだろう
証明できたらチューニング賞ものだろう
何十年ぶりじゃないか?記述計算量に新しい概念が導入されるのは
普通に理論として確立している
数学できるくんの主張は線形型によってチューニングマシンの計算複雑性が変化するってことだろう
証明できたらチューニング賞ものだろう
何十年ぶりじゃないか?記述計算量に新しい概念が導入されるのは
131デフォルトの名無しさん
2021/10/24(日) 22:07:03.33ID:+peTc5KU rustの所有権や借用や、コンパイルが通らずにいらいらきますが、慣れればスラスラというか、ストレスなく書けるようになるのかな
132デフォルトの名無しさん
2021/10/24(日) 22:10:42.59ID:+peTc5KU 日本語がおかしいですが、
所有権や借用が、やりたいことをストレスなく書けるようになる気がしなくて…
所有権や借用が、やりたいことをストレスなく書けるようになる気がしなくて…
133デフォルトの名無しさん
2021/10/24(日) 22:29:10.11ID:HVo+cqVA 慣れみたいなものはあると思う
コンパイル通るようコード直すことを繰り返す内に最初からコンパイル通すことができるようになるかと
コンパイル通るようコード直すことを繰り返す内に最初からコンパイル通すことができるようになるかと
134デフォルトの名無しさん
2021/10/24(日) 22:41:32.45ID:+peTc5KU135デフォルトの名無しさん
2021/10/25(月) 17:58:05.73ID:a6PpXdhO136デフォルトの名無しさん
2021/10/25(月) 20:25:16.68ID:cubP7NbG >>135
ご利益の大小はソフトウェアの種類によって変わるだろうね
OSやブラウザのようなメモリアクセス違反が即致命的な脆弱性に繋がり得る、かつ、巨大でバグを取り除ききるのが難しいソフトではご利益大きい
逆に多少バギーでも困らないソフトならただ煩わしいだけというのは正しいかも
とはいえ慣れればコンパイルが通るようにコードを書くのは多くの場合難しくないので、個人的にはカジュアルユースでもコストよりメリットが多いように感じる
ご利益の大小はソフトウェアの種類によって変わるだろうね
OSやブラウザのようなメモリアクセス違反が即致命的な脆弱性に繋がり得る、かつ、巨大でバグを取り除ききるのが難しいソフトではご利益大きい
逆に多少バギーでも困らないソフトならただ煩わしいだけというのは正しいかも
とはいえ慣れればコンパイルが通るようにコードを書くのは多くの場合難しくないので、個人的にはカジュアルユースでもコストよりメリットが多いように感じる
137デフォルトの名無しさん
2021/10/26(火) 18:03:05.91ID:KgmW7hJW >>136
め早口
め早口
138デフォルトの名無しさん
2021/10/26(火) 20:06:45.12ID:OracOvFU139デフォルトの名無しさん
2021/10/26(火) 22:54:07.10ID:XkR6Nv6d■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 【中国外務省】日中関係悪化は高市氏に責任と名指しで非難… ★4 [BFU★]
- 日本行き空路49万件キャンセル 中国自粛呼びかけ 日本行きチケット予約の約32%に相当 ★2 [ぐれ★]
- 中国の局長は「両手をポケット」で対峙 宣伝戦で国民に示す [蚤の市★]
- 【中国局長】両国関係に「深刻な影響」 首相発言の撤回要求 [蚤の市★]
- 佳子さまがコロナ感染 [おっさん友の会★]
- 外務省局長は無言で厳しい表情…日中の高官協議終了か 高市首相“台湾”発言で中国が強硬対応 発言撤回求めたか…★3 [BFU★]
- 【悲報】靖国参拝を批判する中国に内政干渉するなと騒ぐネトウヨが中国の内紛に干渉する理由、誰にもわからない🥺 [616817505]
- 【実況】博衣こよりのえちえち歌枠🧪★2
- 【悲報】ネトウヨ「なんで高市が謝るんだよ!岡田が謝れ!😡」 [359965264]
- 【高市速報】日本人の3割「中国への武力行使に踏み切る必要がある」ANN世論調査 [931948549]
- 【雑談】暇人集会所part18
- エッヂ逝った?
